packages feed

static-tensor (empty) → 0.1.0.0

raw patch · 175 files changed

+86298/−0 lines, 175 filesdep +Diffdep +basedep +criterionsetup-changed

Dependencies added: Diff, base, criterion, deepseq, lens, linear, mono-traversable, mwc-random, singletons, split, static-tensor, tasty, tasty-golden, template-haskell, text, typed-process, vector

Files

+ ChangeLog.md view
@@ -0,0 +1,5 @@+# Revision history for static-tensor
+
+## 0.1.0.0  -- YYYY-mm-dd
+
+* First version. Released on an unsuspecting world.
+ LICENSE view
@@ -0,0 +1,30 @@+Copyright (c) 2017, Alexey Vagarenko
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+
+    * Redistributions in binary form must reproduce the above
+      copyright notice, this list of conditions and the following
+      disclaimer in the documentation and/or other materials provided
+      with the distribution.
+
+    * Neither the name of Alexey Vagarenko nor the names of other
+      contributors may be used to endorse or promote products derived
+      from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ README.md view
@@ -0,0 +1,233 @@+# Static tensor
+
+[![Build Status](https://api.travis-ci.org/vagarenko/static-tensor.svg?branch=master)](https://travis-ci.org/vagarenko/static-tensor)
+
+Sometimes when working with vectors or matrices or tensors of any rank, you know their sizes 
+and types of their elements at compile time, and you don't need to change them at runtime.
+
+This library provides a uniform interface for working with tensors of any rank. 
+It uses dependently typed techniques to catch errors at compile time instead of runtime.
+It also (ab)uses GHC optimizations to unroll loops to achieve greater performance.
+
+## Tensor data family
+
+The library is built around a data family of tensors
+
+```haskell
+-- | Data family of unboxed tensors. Dimensions of a tensor are represented as type-level list of 
+--   naturals. For instance, @Tensor [3] Float@ is a vector of 3 'Float' elements; @Tensor [4,3] Double@ 
+--   is a matrix with 4 rows 3 columns of 'Double' and so on.
+class IsTensor (dims :: [Nat]) e where
+    {-# MINIMAL tensor, unsafeFromList, toList #-}
+
+    -- | Tensor data constructor for given size and element type.
+    data Tensor dims e :: Type
+
+    -- | Alias for a concrete tensor data constructor.
+    -- 
+    -- >>> tensor @[2,2] @Int 0 1 2 3
+    -- Tensor'2'2 [[0,1],[2,3]]
+    tensor :: TensorConstructor dims e
+
+    -- | Build tensor from the list. The list must contain at least 'length' elements or method will throw an exception.
+    unsafeFromList :: [e] -> Tensor dims e
+
+    -- | Convert tensor to list.
+    toList :: Tensor dims e -> [] e
+```
+In order to start to work with the library, you need to create instances of this data family 
+with desired sizes and element's types.
+For this, you can use Template Haskell functions
+
+```haskell
+Data.Tensor.Static.TH.genTensorInstance :: NonEmpty Int       -- ^ Dimensions of the tensor.
+                                        -> Name               -- ^ Type of elements.
+                                        -> Q [Dec]
+
+Data.Vector.Static.genVectorInstance    :: Int                -- ^ Size of the vector.
+                                        -> Name               -- ^ Type of elements.
+                                        -> Q [Dec]
+
+Data.Matrix.Static.genMatrixInstance    :: Int                -- ^ Number of rows.
+                                        -> Int                -- ^ Number of columns.
+                                        -> Name               -- ^ Type of elements.
+                                        -> Q [Dec]
+```
+
+This code, for example
+
+```haskell
+$(genVectorInstance 4 ''Float)
+$(genMatrixInstance 4 4 ''Float)
+$(genTensorInstance [2, 3, 4] ''Float)
+```
+
+will generate:
+* data instance for vector of 4 elements of type `Float`
+* data instance for matrix of 4 rows and 4 columns of type `Float`
+* data instance for tensor with dimensions 2x3x4 of type `Float`
+
+Now you can create a value of a tensor with functions `vector`, `matrix`, `tensor` 
+which are just aliases for concrete generated data constructors.
+
+```haskell
+{-# LANGUAGE TypeApplications #-}
+
+v :: Vector 4 Float
+v = vector @4 @Float 0 1 2 3
+
+m :: Matrix 4 4 Float
+m = matrix @4 @4 @Float 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
+
+t :: Tensor '[2, 3, 4] Float
+t = tensor @'[2, 3, 4] @Float 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+```
+
+You can add tensors of the same size:
+```haskell
+v2 = v `add` v
+m2 = m `add` m
+```
+
+You can multiply matrix of size `m*n` by matrix of size `n*o` to get matrix of size `m*o`:
+```haskell
+$(genMatrixInstance 3 3 ''Float)
+$(genMatrixInstance 3 4 ''Float)
+$(genMatrixInstance 4 3 ''Float)
+
+m1 :: Matrix 3 4 Float
+m1 = matrix @3 @4 @Float 0 1 2 3 4 5 6 7 8 9 10 11
+
+m2 :: Matrix 4 3 Float
+m2 = matrix @4 @3 @Float 0 1 2 3 4 5 6 7 8 9 10 11
+
+mm :: Matrix 3 3 Float
+mm = m1 `mult` m2
+```
+
+You can multiply matrix of size `m*n` by vector of size `n`:
+```haskell
+mv :: Vector 4 Float
+mv = m `mult` v
+
+vm :: Vector 4 Float
+vm = v `mult` m
+```
+
+In all those examples, if the dimensions of the tensors have been incompatible, 
+you would have received a compilation error.
+
+
+## Loop unrolling
+The library (ab)uses GHC optimizations to unroll loops to achieve greater performance.
+
+For example, matrix multiplication function specialized to concrete size and type
+
+```haskell
+mm :: Matrix 3 3 Float -> Matrix 3 3 Float -> Matrix 3 3 Float
+mm = mult
+```
+
+is compiled to this nice Core
+
+```haskell
+Mm.mm1
+  :: Data.Tensor.Static.Tensor '[3, 3] Float
+     -> Data.Tensor.Static.Tensor '[3, 3] Float
+     -> Data.Tensor.Static.Tensor (MatrixMultDims '[3, 3] '[3, 3]) Float
+Mm.mm1
+  = \ (m0 :: Data.Tensor.Static.Tensor '[3, 3] Float)
+      (m1 :: Data.Tensor.Static.Tensor '[3, 3] Float) ->
+      case m0 `cast` <Co:1> of
+      { Tensor'3'3'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7 dt8 ->
+      case m1 `cast` <Co:1> of
+      { Tensor'3'3'Float dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 ->
+      (Mm.Tensor'3'3'Float
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt dt9)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt1 dt12) (GHC.Prim.timesFloat# dt2 dt15)))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt dt10)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt1 dt13) (GHC.Prim.timesFloat# dt2 dt16)))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt dt11)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt1 dt14) (GHC.Prim.timesFloat# dt2 dt17)))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt3 dt9)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt4 dt12) (GHC.Prim.timesFloat# dt5 dt15)))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt3 dt10)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt4 dt13) (GHC.Prim.timesFloat# dt5 dt16)))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt3 dt11)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt4 dt14) (GHC.Prim.timesFloat# dt5 dt17)))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt6 dt9)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt7 dt12) (GHC.Prim.timesFloat# dt8 dt15)))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt6 dt10)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt7 dt13) (GHC.Prim.timesFloat# dt8 dt16)))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt6 dt11)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt7 dt14) (GHC.Prim.timesFloat# dt8 dt17))))
+      `cast` <Co:10>
+      }
+      }
+```
+
+For implementation details of this trick see `Data.List.Unrolled` module.
+Also see test suite for more Core dumps.
+
+## Performance
+Loop unrolling allows to achive greater performance.
+In matrix multiplication benchmark, for instance, this library is 3 times faster than the `linear` package.
+![Bench](https://raw.githubusercontent.com/vagarenko/static-tensor/master/bench.png)
+
+```
+benchmarking matrix mult 4x4/tensor
+time                 58.24 ns   (58.13 ns .. 58.39 ns)
+                     1.000 R²   (1.000 R² .. 1.000 R²)
+mean                 58.16 ns   (58.03 ns .. 58.41 ns)
+std dev              557.6 ps   (304.1 ps .. 904.9 ps)
+
+benchmarking matrix mult 4x4/linear
+time                 197.2 ns   (196.3 ns .. 198.5 ns)
+                     1.000 R²   (0.999 R² .. 1.000 R²)
+mean                 197.3 ns   (196.2 ns .. 198.8 ns)
+std dev              4.364 ns   (3.190 ns .. 5.935 ns)
+variance introduced by outliers: 30% (moderately inflated)
+
+benchmarking matrix mult 4x4/unrolled
+time                 60.11 ns   (60.01 ns .. 60.25 ns)
+                     1.000 R²   (1.000 R² .. 1.000 R²)
+mean                 59.98 ns   (59.88 ns .. 60.10 ns)
+std dev              376.7 ps   (320.8 ps .. 455.2 ps)
+
+benchmarking matrix mult 4x4/unrolledFull
+time                 60.20 ns   (59.85 ns .. 60.62 ns)
+                     1.000 R²   (1.000 R² .. 1.000 R²)
+mean                 59.89 ns   (59.71 ns .. 60.14 ns)
+std dev              691.5 ps   (518.4 ps .. 949.5 ps)
+variance introduced by outliers: 11% (moderately inflated)
+
+benchmarking matrix mult 4x4/vector
+time                 420.1 ns   (419.2 ns .. 420.9 ns)
+                     1.000 R²   (1.000 R² .. 1.000 R²)
+mean                 418.0 ns   (416.9 ns .. 419.4 ns)
+std dev              3.881 ns   (2.799 ns .. 6.224 ns)
+
+benchmarking matrix mult 4x4/vector4
+time                 95.30 ns   (94.95 ns .. 95.59 ns)
+                     1.000 R²   (1.000 R² .. 1.000 R²)
+mean                 94.59 ns   (94.35 ns .. 94.86 ns)
+std dev              877.4 ps   (721.2 ps .. 1.167 ns)
+```
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple
+main = defaultMain
+ bench/MatMul.hs view
@@ -0,0 +1,30 @@+module Main where
+
+import Criterion.Main
+import Control.Monad
+import System.Random.MWC
+import qualified MatMul.Tensor as T
+import qualified MatMul.Linear as L
+import qualified MatMul.Unrolled as U
+import qualified MatMul.UnrolledFull as F
+import qualified MatMul.Vector as V
+import qualified MatMul.Vector4 as V4
+
+main :: IO ()
+main = do
+    gen <- create
+    es1 <- mkElems gen
+    es2 <- mkElems gen
+
+    defaultMain
+        [ bgroup "matrix mult 4x4"
+            [ bench "tensor"       $ nf ( T.mult ( T.mkMat es1)) ( T.mkMat es2)
+            , bench "linear"       $ nf ( L.mult ( L.mkMat es1)) ( L.mkMat es2)
+            , bench "unrolled"     $ nf ( U.mult ( U.mkMat es1)) ( U.mkMat es2)
+            , bench "unrolledFull" $ nf ( F.mult ( F.mkMat es1)) ( F.mkMat es2)
+            , bench "vector"       $ nf ( V.mult ( V.mkMat es1)) ( V.mkMat es2)
+            , bench "vector4"      $ nf (V4.mult (V4.mkMat es1)) (V4.mkMat es2)
+            ]
+        ]
+    where
+        mkElems gen = replicateM 16 (fmap (\x -> x - (2 :: Float) ^^ (-33 :: Int)) (uniform gen :: IO Float))
+ bench/MatMul/Linear.hs view
@@ -0,0 +1,15 @@+module MatMul.Linear where++import Linear.Matrix+import Linear.V4++mkMat :: [Float] -> M44 Float+mkMat (a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:_) =+    V4 (V4 a b c d)+       (V4 e f g h)+       (V4 i j k l)+       (V4 m n o p)+mkMat _ = error "Not enough elements in the list."++mult :: M44 Float -> M44 Float -> M44 Float+mult = (!*!)
+ bench/MatMul/Tensor.hs view
@@ -0,0 +1,35 @@+{-# LANGUAGE TemplateHaskell #-}
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE MultiParamTypeClasses #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE DeriveAnyClass #-}
+{-# LANGUAGE TypeApplications #-}
+{-# LANGUAGE TypeOperators #-}
+{-# LANGUAGE ScopedTypeVariables #-}
+{-# LANGUAGE AllowAmbiguousTypes #-}
+{-# LANGUAGE FlexibleContexts #-}
+{-# LANGUAGE UndecidableInstances #-}
+{-# LANGUAGE StandaloneDeriving #-}
+
+{-# OPTIONS_GHC -fno-warn-orphans #-}
+
+module MatMul.Tensor where
+
+import Control.DeepSeq
+import Data.Matrix.Static
+import Data.Tensor.Static
+import qualified Data.Matrix.Static as M
+
+$(M.genMatrixInstance 4 4 ''Float)
+
+instance NFData (Matrix 4 4 Float) where
+    rnf (Tensor'4'4'Float {}) = ()
+    {-# INLINE rnf #-}
+
+mkMat :: [Float] -> Matrix 4 4 Float
+mkMat = unsafeFromList
+
+mult :: Matrix 4 4 Float -> Matrix 4 4 Float -> Matrix 4 4 Float
+mult = M.mult
+ bench/MatMul/Unrolled.hs view
@@ -0,0 +1,52 @@+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE DeriveAnyClass #-}
+
+module MatMul.Unrolled where
+
+import Control.DeepSeq
+
+data Vector4f = Vector4f
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    deriving (Show, Eq)
+
+data Matrix4x4f = Matrix4x4f
+    {-# UNPACK #-} !Vector4f
+    {-# UNPACK #-} !Vector4f
+    {-# UNPACK #-} !Vector4f
+    {-# UNPACK #-} !Vector4f             
+    deriving (Show, Eq)
+
+instance NFData Matrix4x4f where
+    rnf (Matrix4x4f {}) = ()
+    {-# INLINE rnf #-}
+
+
+mkMat :: [Float] -> Matrix4x4f
+mkMat (a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:_) = 
+    Matrix4x4f
+        (Vector4f a b c d)
+        (Vector4f e f g h)
+        (Vector4f i j k l)
+        (Vector4f m n o p)
+mkMat _ = error "Not enough elements for matrix."
+
+mult :: Matrix4x4f -> Matrix4x4f -> Matrix4x4f
+mult
+    (Matrix4x4f
+        (Vector4f a0 a1 a2 a3)
+        (Vector4f b0 b1 b2 b3)
+        (Vector4f c0 c1 c2 c3)
+        (Vector4f d0 d1 d2 d3))
+    (Matrix4x4f
+        (Vector4f x0 x1 x2 x3)
+        (Vector4f y0 y1 y2 y3)
+        (Vector4f z0 z1 z2 z3)
+        (Vector4f w0 w1 w2 w3)) =
+    Matrix4x4f
+        (Vector4f (a0*x0+a1*y0+a2*z0+a3*w0) (a0*x1+a1*y1+a2*z1+a3*w1) (a0*x2+a1*y2+a2*z2+a3*w2) (a0*x3+a1*y3+a2*z3+a3*w3))
+        (Vector4f (b0*x0+b1*y0+b2*z0+b3*w0) (b0*x1+b1*y1+b2*z1+b3*w1) (b0*x2+b1*y2+b2*z2+b3*w2) (b0*x3+b1*y3+b2*z3+b3*w3))
+        (Vector4f (c0*x0+c1*y0+c2*z0+c3*w0) (c0*x1+c1*y1+c2*z1+c3*w1) (c0*x2+c1*y2+c2*z2+c3*w2) (c0*x3+c1*y3+c2*z3+c3*w3))
+        (Vector4f (d0*x0+d1*y0+d2*z0+d3*w0) (d0*x1+d1*y1+d2*z1+d3*w1) (d0*x2+d1*y2+d2*z2+d3*w2) (d0*x3+d1*y3+d2*z3+d3*w3))
+ bench/MatMul/UnrolledFull.hs view
@@ -0,0 +1,43 @@+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE DeriveAnyClass #-}
+
+module MatMul.UnrolledFull where
+
+import Control.DeepSeq
+
+data Matrix4x4f = Matrix4x4f
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    {-# UNPACK #-} !Float
+    deriving (Show, Eq)
+
+instance NFData Matrix4x4f where
+    rnf (Matrix4x4f {}) = ()
+
+mkMat :: [Float] -> Matrix4x4f
+mkMat (a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:_) =
+    Matrix4x4f a b c d e f g h i j k l m n o p
+mkMat _ = error "Not enough elements for matrix."
+
+mult :: Matrix4x4f -> Matrix4x4f -> Matrix4x4f
+mult
+    (Matrix4x4f a0 a1 a2 a3 b0 b1 b2 b3 c0 c1 c2 c3 d0 d1 d2 d3)
+    (Matrix4x4f x0 x1 x2 x3 y0 y1 y2 y3 z0 z1 z2 z3 w0 w1 w2 w3) =
+    Matrix4x4f 
+        (a0*x0+a1*y0+a2*z0+a3*w0) (a0*x1+a1*y1+a2*z1+a3*w1) (a0*x2+a1*y2+a2*z2+a3*w2) (a0*x3+a1*y3+a2*z3+a3*w3)
+        (b0*x0+b1*y0+b2*z0+b3*w0) (b0*x1+b1*y1+b2*z1+b3*w1) (b0*x2+b1*y2+b2*z2+b3*w2) (b0*x3+b1*y3+b2*z3+b3*w3)
+        (c0*x0+c1*y0+c2*z0+c3*w0) (c0*x1+c1*y1+c2*z1+c3*w1) (c0*x2+c1*y2+c2*z2+c3*w2) (c0*x3+c1*y3+c2*z3+c3*w3)
+        (d0*x0+d1*y0+d2*z0+d3*w0) (d0*x1+d1*y1+d2*z1+d3*w1) (d0*x2+d1*y2+d2*z2+d3*w2) (d0*x3+d1*y3+d2*z3+d3*w3)
+ bench/MatMul/Vector.hs view
@@ -0,0 +1,28 @@+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE DeriveAnyClass #-}
+{-# LANGUAGE BangPatterns #-}
+
+module MatMul.Vector where
+
+import Data.Vector.Unboxed
+
+type Matrix4x4f = Vector Float
+
+mkMat :: [Float] -> Matrix4x4f
+mkMat xs@(_a:_b:_c:_d:_e:_f:_g:_h:_i:_j:_k:_l:_m:_n:_o:_p:_) = fromList xs
+mkMat _ = error "Not enough elements for matrix."
+
+mult :: Matrix4x4f -> Matrix4x4f -> Matrix4x4f
+mult a b = generate 16 go
+    where
+        go n = i0 * j0 +  i1 * j1 +  i2 * j2 +  i3 * j3
+            where
+                (!i, !j) = n `divMod` 4
+                i0 = unsafeIndex a (0 + i * 4)
+                i1 = unsafeIndex a (1 + i * 4)
+                i2 = unsafeIndex a (2 + i * 4)
+                i3 = unsafeIndex a (3 + i * 4)
+                j0 = unsafeIndex b (j + 0 * 4)
+                j1 = unsafeIndex b (j + 1 * 4)
+                j2 = unsafeIndex b (j + 2 * 4)
+                j3 = unsafeIndex b (j + 3 * 4)
+ bench/MatMul/Vector4.hs view
@@ -0,0 +1,33 @@+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE DeriveAnyClass #-}
+{-# LANGUAGE ScopedTypeVariables #-}
+{-# LANGUAGE BangPatterns #-}
+
+module MatMul.Vector4 where
+
+import Data.Vector.Unboxed
+
+type Matrix4x4f = Vector (Float, Float, Float, Float)
+
+mkMat :: [Float] -> Matrix4x4f
+mkMat (a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:_) = fromList [(a,b,c,d), (e,f,g,h), (i,j,k,l), (m,n,o,p)]
+mkMat _ = error "Not enough elements for matrix."
+
+mult :: Matrix4x4f -> Matrix4x4f -> Matrix4x4f
+mult a b = generate 4 go
+    where
+        go !i = (go' 0, go' 1, go' 2, go' 3)
+            where
+                go' !j = i0 * j0 +  i1 * j1 +  i2 * j2 +  i3 * j3
+                    where
+                        (!i0, !i1, !i2, !i3) = unsafeIndex a i
+                        !j0 = nth j (unsafeIndex b 0)
+                        !j1 = nth j (unsafeIndex b 1)
+                        !j2 = nth j (unsafeIndex b 2)
+                        !j3 = nth j (unsafeIndex b 3)
+                        nth :: Int -> (Float, Float, Float, Float) -> Float
+                        nth 0 (!x, _ , _ ,  _) = x
+                        nth 1 ( _, !x, _ ,  _) = x
+                        nth 2 ( _, _ , !x,  _) = x
+                        nth 3 ( _, _ , _ , !x) = x
+                        nth _ _            = error "Out of range."
+ src/Data/Function/NAry.hs view
@@ -0,0 +1,51 @@+{-# LANGUAGE TypeFamilies            #-}
+{-# LANGUAGE MultiParamTypeClasses   #-}
+{-# LANGUAGE TypeOperators           #-}
+{-# LANGUAGE FlexibleInstances       #-}
+{-# LANGUAGE FlexibleContexts        #-}
+{-# LANGUAGE ScopedTypeVariables     #-}
+{-# LANGUAGE UndecidableInstances    #-}
+{-# LANGUAGE TypeApplications        #-}
+{-# LANGUAGE TypeInType              #-}
+{-# LANGUAGE AllowAmbiguousTypes     #-}
+
+-----------------------------------------------------------------------------
+-- |
+-- Module      :  Data.Function.NAry
+-- Copyright   :  (C) 2017 Alexey Vagarenko
+-- License     :  BSD-style (see LICENSE)
+-- Maintainer  :  Alexey Vagarenko (vagarenko@gmail.com)
+-- Stability   :  experimental
+-- Portability :  non-portable
+--
+----------------------------------------------------------------------------
+
+module Data.Function.NAry (
+      NAry
+    , ApplyNAry(..)
+) where
+
+import Data.Kind                    (Type)
+import Data.Proxy                   (Proxy(..))
+import GHC.TypeLits                 (Nat, type (-), natVal, KnownNat)
+
+---------------------------------------------------------------------------------------------------
+-- | N-ary function from @n@ arguments of type @t@ to value of type @r@.
+type family NAry (n :: Nat) (t :: Type) (r :: Type) :: Type where
+    NAry 0 t r = r
+    NAry n t r = t -> (NAry (n - 1) t r)
+
+-- | Apply list of params to N-ary function.
+class ApplyNAry (n :: Nat) (t :: Type) (r :: Type) where
+    applyNAry :: NAry n t r -> [t] -> r
+
+instance {-# OVERLAPPING #-} ApplyNAry 0 t r where
+    applyNAry r _ = r
+    {-# INLINE applyNAry #-}
+
+instance {-# OVERLAPPABLE #-}
+    (ApplyNAry (n - 1) t r, NAry n t r ~ (t -> NAry (n - 1) t r), KnownNat n)
+    => ApplyNAry n t r where
+    applyNAry f (x : xs) = applyNAry @(n - 1) @t @r (f x) xs
+    applyNAry _ []       = error $ "Not enough params to apply to " ++ show (natVal (Proxy @n)) ++ "-ary function."
+    {-# INLINE applyNAry #-}
+ src/Data/List/Unrolled.hs view
@@ -0,0 +1,372 @@+{-# LANGUAGE TypeFamilies            #-}
+{-# LANGUAGE MultiParamTypeClasses   #-}
+{-# LANGUAGE DataKinds               #-}
+{-# LANGUAGE KindSignatures          #-}
+{-# LANGUAGE TypeOperators           #-}
+{-# LANGUAGE FlexibleInstances       #-}
+{-# LANGUAGE FlexibleContexts        #-}
+{-# LANGUAGE ScopedTypeVariables     #-}
+{-# LANGUAGE TemplateHaskell         #-}
+{-# LANGUAGE UndecidableInstances    #-}
+{-# LANGUAGE TypeApplications        #-}
+{-# LANGUAGE TypeInType              #-}
+{-# LANGUAGE AllowAmbiguousTypes     #-}
+{-# LANGUAGE NoImplicitPrelude       #-}
+{-# LANGUAGE GADTs                   #-}
+{-# LANGUAGE ConstraintKinds         #-}
+
+{-# OPTIONS_GHC -fno-solve-constant-dicts #-} -- See https://ghc.haskell.org/trac/ghc/ticket/13943#comment:2
+
+-----------------------------------------------------------------------------
+-- |
+-- Module      :  Data.List.Unrolled
+-- Copyright   :  (C) 2017 Alexey Vagarenko
+-- License     :  BSD-style (see LICENSE)
+-- Maintainer  :  Alexey Vagarenko (vagarenko@gmail.com)
+-- Stability   :  experimental
+-- Portability :  non-portable
+--
+-- This module provides unrollable versions of functions on lists.
+--
+-- Classes in this module are assumed to be closed. You __should not__ create
+-- new instances for them.
+--
+----------------------------------------------------------------------------
+
+module Data.List.Unrolled (
+      Append(..)
+    , Drop(..)
+    , Take(..)
+    , splitAt
+    , ChunksOf(..)
+    , ChunksCount
+    , Zip(..)
+    , Zip3(..)
+    , ZipWith(..)
+    , Unzip(..)
+    , Filter(..)
+    , Map(..)
+    , All(..)
+    , Foldr(..)
+    , Foldr1(..)
+    , Foldl(..)
+    , Foldl1(..)
+    , foldMap
+    , FoldMap
+    , sum
+    , Sum
+    , Replicate(..)
+    , EnumFromN(..)
+    , EnumFromStepN(..)
+) where
+
+import Data.Type.Bool           (If)
+import GHC.TypeLits             (Nat, type (+), type (-), type (<=?))
+
+import Prelude  (Bool(..), otherwise, Num(..), error, Monoid(..), (.))
+
+---------------------------------------------------------------------------------------------------
+-- | Append two lists. Type param @l@ is the length of the left list.
+class Append (n :: Nat) where
+    append :: [a] -> [a] -> [a]
+
+instance {-# OVERLAPPING #-} Append 0 where
+    append _ ys = ys
+    {-# INLINE append #-}
+
+instance {-# OVERLAPPABLE #-} (Append (n - 1)) => Append n where
+    append []       _  = error "append: Not enough elements in the list."
+    append (x : xs) ys = x : append @(n - 1) xs ys
+    {-# INLINE append #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Drop @n@ elements from a list.
+class Drop (n :: Nat) where
+    drop :: [a] -> [a]
+
+instance {-# OVERLAPPING #-} Drop 0 where
+    drop xs = xs
+    {-# INLINE drop #-}
+
+instance {-# OVERLAPPABLE #-} (Drop (n - 1)) => Drop n where
+    drop [] = error "drop: Not enough elements in the list."
+    drop (_ : xs) = drop @(n - 1) xs
+    {-# INLINE drop #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Take @n@ elements from a list
+class Take (n :: Nat) where
+    take :: [a] -> [a]
+
+instance {-# OVERLAPPING #-} Take 0 where
+    take _ = []
+    {-# INLINE take #-}
+
+instance {-# OVERLAPPABLE #-} (Take (n - 1)) => Take n where
+    take [] = error "take: Not enough elements in the list."
+    take (x : xs) = x : take @(n - 1) xs
+    {-# INLINE take #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Split list at @n@-th element.
+splitAt :: forall (n :: Nat) a. (Take n, Drop n) => [a] -> ([a], [a])
+splitAt xs = (take @n xs, drop @n xs)
+
+---------------------------------------------------------------------------------------------------
+-- | Split list into chunks of the given length @c@. @n@ is length of the list.
+class ChunksOf (n :: Nat) (c :: Nat) where
+    chunksOf :: [a] -> [[a]]
+
+instance {-# OVERLAPPING #-} ChunksOf 0 0 where
+    chunksOf _ = []
+    {-# INLINE chunksOf #-}
+
+instance {-# OVERLAPPABLE #-} ChunksOf 0 c where
+    chunksOf _ = []
+    {-# INLINE chunksOf #-}
+
+instance {-# OVERLAPPABLE #-} ChunksOf n 0 where
+    chunksOf _ = []
+    {-# INLINE chunksOf #-}
+
+instance {-# OVERLAPPABLE #-} (Take c, Drop c, ChunksOf (n - 1) c) => ChunksOf n c where
+    chunksOf xs =
+        let (l, r) = splitAt @c xs
+        in l : chunksOf @(n - 1) @c r
+    {-# INLINE chunksOf #-}
+
+-- | Number of resulting chunks when list of length @len@ split by chunks of length @clen@.
+type family ChunksCount (len :: Nat) (clen :: Nat) where
+    ChunksCount 0 _ = 0
+    ChunksCount _ 0 = 0
+    ChunksCount l c = If (l <=? c) 1 (1 + ChunksCount (l - c) c)
+
+---------------------------------------------------------------------------------------------------
+-- | Zip 2 lists together. Type param @n@ is the length of the first list.
+class Zip (n :: Nat) where
+    zip :: [a] -> [b] -> [(a, b)]
+
+instance {-# OVERLAPPING #-} Zip 0 where
+    zip _ _ = []
+    {-# INLINE zip #-}
+
+instance {-# OVERLAPPABLE #-} (Zip (n - 1)) => Zip n where
+    zip (x : xs) (y : ys) = (x, y) : zip @(n - 1) xs ys
+    zip (_ : _ ) []       = []
+    zip []        _       = error "zip: Not enough elements in the first list."
+    {-# INLINE zip #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Zip 3 lists together. Type param @n@ is the length of the first list.
+class Zip3 (n :: Nat) where
+    zip3 :: [a] -> [b] -> [c] -> [(a, b, c)]
+
+instance {-# OVERLAPPING #-} Zip3 0 where
+    zip3 _ _ _ = []
+    {-# INLINE zip3 #-}
+
+instance {-# OVERLAPPABLE #-} (Zip3 (n - 1)) => Zip3 n where
+    zip3 (x : xs) (y : ys) (z : zs) = (x, y, z) : zip3 @(n - 1) xs ys zs
+    zip3 (_ : _ ) []       _        = []
+    zip3 (_ : _ ) _        []       = []
+    zip3 []       _        _        = error "zip3: Not enough elements in the first list."
+    {-# INLINE zip3 #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Unzip a list. Type param @n@ is the length of the list.
+class Unzip (n :: Nat) where
+    unzip :: [(a, b)] -> ([a], [b])
+
+instance {-# OVERLAPPING #-} Unzip 0 where
+    unzip _ = ([], [])
+    {-# INLINE unzip #-}
+
+instance {-# OVERLAPPABLE #-} (Unzip (n - 1)) => Unzip n where
+    unzip []       = error "unzip: Not enough elements in the list."
+    unzip (x : xs) = (\(a, b) (as, bs) -> (a : as, b : bs)) x (unzip @(n - 1) xs)
+    {-# INLINE unzip #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Zip 2 lists together using given function. Type param @n@ is the length of the first list.
+class ZipWith (n :: Nat) where
+    zipWith :: (a -> b -> c) -> [a] -> [b] -> [c]
+
+instance {-# OVERLAPPING #-} ZipWith 0 where
+    zipWith _ _ _ = []
+    {-# INLINE zipWith #-}
+
+instance {-# OVERLAPPABLE #-} (ZipWith (n - 1)) => ZipWith n where
+    zipWith f (x : xs) (y : ys) = f x y : zipWith @(n - 1) f xs ys
+    zipWith _ (_ : _ ) []       = []
+    zipWith _ []       _        = error "zipWith: Not enough elements in the first list."
+    {-# INLINE zipWith #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Filter list with given predicate. Type param @n@ is the length of the list.
+class Filter (n :: Nat) where
+    filter :: (a -> Bool) -> [a] -> [a]
+
+instance {-# OVERLAPPING #-} Filter 0 where
+    filter _ _ = []
+    {-# INLINE filter #-}
+
+instance {-# OVERLAPPABLE #-} (Filter (n - 1)) => Filter n where
+    filter _ []       = error "filter: Not enough elements in the list."
+    filter f (x : xs)
+        | f x       = x : filter @(n - 1) f xs
+        | otherwise = filter @(n - 1) f xs
+    {-# INLINE filter #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Apply function to all elements of a list. Type param @n@ is the length of the list.
+class Map (n :: Nat) where
+    map :: (a -> b) -> [a] -> [b]
+
+instance {-# OVERLAPPING #-} Map 0 where
+    map _ _ = []
+    {-# INLINE map #-}
+
+instance {-# OVERLAPPABLE #-} (Map (n - 1)) => Map n where
+    map _ []       = error "map: Not enough elements in the list."
+    map f (x : xs) = f x : map @(n - 1) f xs
+    {-# INLINE map #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Check if all elements of the list satisfy the predicate. Type param @n@ is the length of the list.
+class All (n :: Nat) where
+    all :: (a -> Bool) -> [a] -> Bool
+
+instance {-# OVERLAPPING #-} All 0 where
+    all _ _ = True
+    {-# INLINE all #-}
+
+instance {-# OVERLAPPABLE #-} (All (n - 1)) => All n where
+    all _ []        = error "all: Not enough elements in the list."
+    all f (x : xs)
+        | f x       = all @(n - 1) f xs
+        | otherwise = False
+    {-# INLINE all #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Right fold of a list of length @n@.
+class Foldr (n :: Nat) where
+    foldr :: (a -> b -> b) -> b -> [a] -> b
+
+instance {-# OVERLAPPING #-} Foldr 0 where
+    foldr _ z _ = z
+    {-# INLINE foldr #-}
+
+instance {-# OVERLAPPABLE #-} (Foldr (n - 1)) => Foldr n where
+    foldr _ _ []       = error "foldr: Not enough elements in the list."
+    foldr f z (x : xs) = f x (foldr @(n - 1) f z xs)
+    {-# INLINE foldr #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Right fold of a list of length @n@ with no base element.
+class Foldr1 (n :: Nat) where
+    foldr1 :: (a -> a -> a) -> [a] -> a
+
+instance {-# OVERLAPPING #-} Foldr1 1 where
+    foldr1 _ []      = error "foldr1: Not enough elements in the list."
+    foldr1 _ (x : _) = x
+    {-# INLINE foldr1 #-}
+
+instance {-# OVERLAPPABLE #-} (Foldr1 (n - 1)) => Foldr1 n where
+    foldr1 _ []       = error "foldr1: Empty list."
+    foldr1 f (x : xs) = f x (foldr1 @(n - 1) f xs)
+    {-# INLINE foldr1 #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Left fold of a list of length @n@.
+class Foldl (n :: Nat) where
+    foldl :: (b -> a -> b) -> b -> [a] -> b
+
+instance {-# OVERLAPPING #-} Foldl 0 where
+    foldl _ z _ = z
+    {-# INLINE foldl #-}
+
+instance {-# OVERLAPPABLE #-} (Foldl (n - 1)) => Foldl n where
+    foldl _ _ []       = error "foldl: Not enough elements in the list."
+    foldl f z (x : xs) = f (foldl @(n - 1) f z xs) x
+    {-# INLINE foldl #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Right fold of a list of length @n@ with no base element.
+class Foldl1 (n :: Nat) where
+    foldl1 :: (a -> a -> a) -> [a] -> a
+
+instance {-# OVERLAPPING #-} Foldl1 1 where
+    foldl1 _ []      = error "foldl1: Not enough elements in the list."
+    foldl1 _ (x : _) = x
+    {-# INLINE foldl1 #-}
+
+instance {-# OVERLAPPABLE #-} (Foldl1 (n - 1)) => Foldl1 n where
+    foldl1 _ []       = error "foldl1: Empty list."
+    foldl1 f (x : xs) = f (foldl1 @(n - 1) f xs) x
+    {-# INLINE foldl1 #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Map each element of the list of length @n@ to a monoid, and combine the results.
+foldMap :: forall (n :: Nat) m a.
+           (FoldMap n m) =>
+           (a -> m) -> [a] -> m
+foldMap f = foldr @n (mappend . f) mempty
+{-# INLINE foldMap #-}
+
+-- | Constraint of the 'foldMap' function.
+type FoldMap (n :: Nat) m = (Monoid m, Foldr n)
+
+---------------------------------------------------------------------------------------------------
+-- | Sum of the elements of the list of length @n@.
+sum :: forall (n :: Nat) a.
+       (Sum n a) =>
+       [a] -> a
+sum = foldr @n (+) 0
+{-# INLINE sum #-}
+
+-- | Constraint of the 'sum' function.
+type Sum (n :: Nat) a = (Foldr n, Num a)
+
+---------------------------------------------------------------------------------------------------
+-- | Fill the list of length @n@ with the same values.
+class Replicate (n :: Nat) where
+    replicate :: a -> [a]
+
+instance {-# OVERLAPPING #-} Replicate 0 where
+    replicate _ = []
+    {-# INLINE replicate #-}
+
+instance {-# OVERLAPPABLE #-} (Replicate (n - 1)) => Replicate n where
+    replicate a = a : replicate @(n - 1) a
+    {-# INLINE replicate #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Enumeration of length @n@ starting from given value.
+class EnumFromN (n :: Nat) where
+    enumFromN :: (Num a)
+        => a        -- ^ Starting value.
+        -> [a]
+
+instance {-# OVERLAPPING #-} EnumFromN 0 where
+    enumFromN _ = []
+    {-# INLINE enumFromN #-}
+
+instance {-# OVERLAPPABLE #-} (EnumFromN (n - 1)) => EnumFromN n where
+    enumFromN a = a : enumFromN @(n - 1) (a + 1)
+    {-# INLINE enumFromN #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Enumeration of length @n@ starting from given value with given step.
+class EnumFromStepN (n :: Nat) where
+    enumFromStepN :: (Num a)
+        => a        -- ^ Starting value.
+        -> a        -- ^ Step.
+        -> [a]
+
+instance {-# OVERLAPPING #-} EnumFromStepN 0 where
+    enumFromStepN _ _ = []
+    {-# INLINE enumFromStepN #-}
+
+instance {-# OVERLAPPABLE #-} (EnumFromStepN (n - 1)) => EnumFromStepN n where
+    enumFromStepN a s = a : enumFromStepN @(n - 1) (a + s) s
+    {-# INLINE enumFromStepN #-}
+ src/Data/Matrix/Static.hs view
@@ -0,0 +1,686 @@+{-# LANGUAGE TypeFamilies          #-}
+{-# LANGUAGE MultiParamTypeClasses #-}
+{-# LANGUAGE TypeSynonymInstances  #-}           
+{-# LANGUAGE DataKinds             #-}
+{-# LANGUAGE KindSignatures        #-}
+{-# LANGUAGE TypeOperators         #-}
+{-# LANGUAGE FlexibleInstances     #-}
+{-# LANGUAGE FlexibleContexts      #-}           
+{-# LANGUAGE ScopedTypeVariables   #-}
+{-# LANGUAGE DeriveGeneric         #-}
+{-# LANGUAGE DeriveAnyClass        #-}
+{-# LANGUAGE TemplateHaskell       #-}
+{-# LANGUAGE StandaloneDeriving    #-}           
+{-# LANGUAGE UndecidableInstances  #-}
+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+{-# LANGUAGE AllowAmbiguousTypes   #-}
+{-# LANGUAGE ConstraintKinds       #-}
+{-# LANGUAGE RankNTypes            #-}
+{-# LANGUAGE GADTs                 #-}
+
+{-# OPTIONS_GHC -fno-solve-constant-dicts #-} -- See https://ghc.haskell.org/trac/ghc/ticket/13943#comment:2
+
+-----------------------------------------------------------------------------
+-- |
+-- Module      :  Data.Matrix.Static
+-- Copyright   :  (C) 2017 Alexey Vagarenko
+-- License     :  BSD-style (see LICENSE)
+-- Maintainer  :  Alexey Vagarenko (vagarenko@gmail.com)
+-- Stability   :  experimental
+-- Portability :  non-portable
+--
+----------------------------------------------------------------------------
+
+module Data.Matrix.Static (
+    -- * Matrix
+      Matrix
+    , MatrixConstructor
+    , IsMatrix
+    -- * Matrix construction
+    , matrix
+    , identity
+    , Identity
+    -- * Matrix elements
+    -- ** Rows
+    , row
+    , Row
+    , getRowElems
+    , GetRowElems
+    , setRowElems
+    , SetRowElems
+    , mapRowElems
+    , MapRowElems
+    -- ** Columns
+    , col
+    , Col
+    , getColElems
+    , GetColElems
+    , setColElems
+    , SetColElems
+    , mapColElems
+    , MapColElems
+    -- * Matrix multiplication
+    , MatrixMultDims
+    , MatrixMult(..)
+    -- * Matrix operations
+    , transpose
+    , Transpose
+    , minorMatrix
+    , MinorMatrix
+    , Determinant(..)
+    , minor
+    , Minor
+    , cofactor
+    , Cofactor
+    , cofactorMatrix
+    , CofactorMatrix
+    , adjugateMatrix
+    , AdjugateMatrix
+    , inverse
+    , Inverse
+    -- * Generating matrix instances
+    , genMatrixInstance
+) where
+
+import Control.Lens             (Lens', (^.))
+import Data.Kind                (Constraint)
+import Data.Proxy               (Proxy(..))
+import Data.Singletons          (type (~>))
+import Data.Singletons.TH       (genDefunSymbols)
+import Data.Tensor.Static       ( IsTensor(..), Tensor, TensorConstructor, NormalizeDims
+                                , generate, Generate
+                                , subtensor, SubtensorCtx, getSubtensorElems, GetSubtensorElems, setSubtensorElems, SetSubtensorElems
+                                , mapSubtensorElems, MapSubtensorElems
+                                , slice, Slice, getSliceElems, GetSliceElems, setSliceElems, SetSliceElems
+                                , mapSliceElems, MapSliceElems
+                                , tensorElem, TensorElem
+                                , withTensor
+                                , NatsFromTo
+                                , scale, Scale)
+import Data.Tensor.Static.TH    (genTensorInstance)
+import Data.Vector.Static       (Vector)
+import GHC.TypeLits             (Nat, type (<=), type (<=?), type (-), type (+), TypeError, ErrorMessage(..))
+import Language.Haskell.TH      (Q, Name, Dec)
+import Type.List                (DemoteWith(..))
+
+import qualified Data.List.NonEmpty as N
+import qualified Data.List.Unrolled as U
+
+---------------------------------------------------------------------------------------------------
+-- | Matrix with @m@ rows, @n@ columns
+type Matrix m n e = Tensor '[m, n] e
+
+-- | Type of matrix data constructor.
+type MatrixConstructor m n e = TensorConstructor '[m, n] e
+
+-- | Matrix constraint.
+type IsMatrix m n e = IsTensor '[m, n] e
+
+---------------------------------------------------------------------------------------------------
+-- | Alias for a conrete matrix data constructor.
+matrix :: forall m n e. (IsMatrix m n e) => MatrixConstructor m n e
+matrix = tensor @'[m, n] @e
+{-# INLINE matrix #-}
+
+-- | Identity matrix of size @m*m@
+identity :: forall m e.
+    ( IsMatrix m m e
+    , Generate '[m, m] e ([Nat] -> Constraint) (IdentityWrk e)
+    , Num e
+    )
+    => Matrix m m e -- ^
+identity = generate @'[m, m] @e @([Nat] -> Constraint) @(IdentityWrk e) go
+    where
+        go :: forall (index :: [Nat]).
+              (IdentityWrk e index) => 
+              Proxy index -> e
+        go _ = identityWrk @e @index
+{-# INLINE identity #-}
+
+-- | Constraints for 'identity' function.
+type Identity m e =
+    ( IsMatrix m m e
+    , Generate '[m, m] e ([Nat] -> Constraint) (IdentityWrk e)
+    , Num e
+    )    
+
+class IdentityWrk e (index :: [Nat]) where
+    identityWrk :: e
+
+instance {-# OVERLAPPABLE #-} (Num e) => IdentityWrk e '[i, j] where
+    identityWrk = 0
+    {-# INLINE identityWrk #-}
+
+instance {-# OVERLAPPING #-} (Num e) => IdentityWrk e '[i, i] where
+    identityWrk = 1
+    {-# INLINE identityWrk #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Lens for the row number @r@ of the matrix @m@x@n@.
+--
+-- >>> matrix @2 @2 @Float 0 1 2 3 ^. row @0
+-- Tensor'2 [0.0,1.0]
+--
+-- >>> set (row @1) (vector @2 @Float 20 30) (matrix @2 @2 @Float 0 1 2 3)
+-- Tensor'2'2 [[0.0,1.0],[20.0,30.0]]
+row :: forall (r :: Nat) (m :: Nat) (n :: Nat) e.
+    (Row r m n e)
+    => Lens' (Matrix m n e) (Vector n e)    -- ^
+row = subtensor @'[r] @'[m, n] @e
+{-# INLINE row #-}
+
+-- | Constraints for 'row' function.
+type Row (r :: Nat) (m :: Nat) (n :: Nat) e =
+    ( SubtensorCtx '[r] '[m, n] e
+    , r <= m - 1                   -- TODO: Why do I need this constraint?
+    , NormalizeDims '[n] ~ '[n]    -- TODO: Why do I need this constraint?
+    )
+
+-- | List of elements of the row number @r@ of the matrix @m@x@n@.
+--
+-- >>> getRowElems @0 (matrix @2 @2 @Float 0 1 2 3)
+-- [0.0,1.0]
+getRowElems :: forall (r :: Nat) (m :: Nat) (n :: Nat) e.
+    (GetRowElems r m n e)
+    => Matrix m n e         -- ^
+    -> [e]
+getRowElems = getSubtensorElems @'[r] @'[m, n] @e
+{-# INLINE getRowElems #-}
+
+-- | Constraints for 'getRowElems' function.
+type GetRowElems (r :: Nat) (m :: Nat) (n :: Nat) e =
+    GetSubtensorElems '[r] '[m, n] e
+
+-- | Put elements of the list into row number @r@. The list must have enough elements.
+--
+-- >>> setRowElems @1 (matrix @2 @2 @Float 0 1 2 3) [20, 30]
+-- Just Tensor'2'2 [[0.0,1.0],[20.0,30.0]]
+--
+-- >>> setRowElems @1 (matrix @2 @2 @Float 0 1 2 3) [20]
+-- Nothing
+setRowElems :: forall (r :: Nat) (m :: Nat) (n :: Nat) e.
+    (SetRowElems r m n e)
+    => Matrix m n e             -- ^ The matrix.
+    -> [e]                      -- ^ New row elements.
+    -> Maybe (Matrix m n e)
+setRowElems = setSubtensorElems @'[r] @'[m, n] @e
+{-# INLINE setRowElems #-}
+
+-- | Constraints for 'setRowElems' function.
+type SetRowElems (r :: Nat) (m :: Nat) (n :: Nat) e =
+    SetSubtensorElems '[r] '[m, n] e
+
+-- | Apply a function to all elements of the row number @r@.
+--
+-- >>> mapRowElems @1 (matrix @2 @2 @Float 0 1 2 3) (* 100)
+-- Tensor'2'2 [[0.0,1.0],[200.0,300.0]]
+mapRowElems :: forall (r :: Nat) (m :: Nat) (n :: Nat) e.
+    (MapRowElems r m n e)
+    => Matrix m n e         -- ^ The matrix.
+    -> (e -> e)             -- ^ The mapping function.
+    -> Matrix m n e
+mapRowElems = mapSubtensorElems @'[r] @'[m, n] @e
+{-# INLINE mapRowElems #-}
+
+-- | Constraints for 'mapRowElems' function.
+type MapRowElems (r :: Nat) (m :: Nat) (n :: Nat) e =
+    MapSubtensorElems '[r] '[m, n] e
+
+---------------------------------------------------------------------------------------------------
+-- | Lens for the column number @c@ of the matrix @m@x@n@.
+--
+-- >>> matrix @2 @2 @Float 0 1 2 3 ^. col @0
+-- Tensor'2 [0.0,2.0]
+--
+-- >>> set (col @1) (vector @2 @Float 10 30) (matrix @2 @2 @Float 0 1 2 3)
+-- Tensor'2'2 [[0.0,10.0],[2.0,30.0]]
+col :: forall (c :: Nat) (m :: Nat) (n :: Nat) e.
+    (Col c m n e)
+    => Lens' (Matrix m n e) (Vector m e)        -- ^
+col = slice @'[0, c] @'[m, 1] @'[m, n] @e
+{-# INLINE col #-}
+
+-- | Constraints for 'col' function.
+type Col (c :: Nat) (m :: Nat) (n :: Nat) e =
+    ( Slice '[0, c] '[m, 1] '[m, n] e
+    , NormalizeDims '[m, 1] ~ '[m]          -- TODO: Why do I need this constraint?
+    )
+
+-- | List of elements of the column number @c@ of the matrix @m@x@n@.
+--
+-- >>> getColElems @0 (matrix @2 @2 @Float 0 1 2 3)
+-- [0.0,2.0]
+getColElems :: forall (c :: Nat) (m :: Nat) (n :: Nat) e.
+    (GetColElems c m n e)
+    => Matrix m n e             -- ^
+    -> [e]
+getColElems = getSliceElems @'[0, c] @'[m, 1] @'[m, n] @e
+{-# INLINE getColElems #-}
+
+-- | Constraints for 'getColElems' function.
+type GetColElems (c :: Nat) (m :: Nat) (n :: Nat) e =
+    GetSliceElems '[0, c] '[m, 1] '[m, n] e
+
+-- | Put elements of the list into column number @r@. The list must have enough elements.
+--
+-- >>> setColElems @1 (matrix @2 @2 @Float 0 1 2 3) [10, 30]
+-- Just Tensor'2'2 [[0.0,10.0],[2.0,30.0]]
+--
+-- >>> setColElems @1 (matrix @2 @2 @Float 0 1 2 3) [10]
+-- Nothing
+setColElems :: forall (c :: Nat) (m :: Nat) (n :: Nat) e.
+    (SetColElems c m n e)
+    => Matrix m n e         -- ^ The matrix.
+    -> [e]                  -- ^ New column elements.
+    -> Maybe (Matrix m n e)
+setColElems = setSliceElems @'[0, c] @'[m, 1] @'[m, n] @e
+{-# INLINE setColElems #-}
+
+-- | Constraints for 'setColElems' function.
+type SetColElems (c :: Nat) (m :: Nat) (n :: Nat) e =
+    SetSliceElems '[0, c] '[m, 1] '[m, n] e
+
+-- | Apply a function to all elements of the column number @c@.
+--
+-- >>> mapColElems @1 (matrix @2 @2 @Float 0 1 2 3) (* 100)
+-- Tensor'2'2 [[0.0,100.0],[2.0,300.0]]
+mapColElems :: forall (c :: Nat) (m :: Nat) (n :: Nat) e.
+    (MapColElems c m n e)
+    => Matrix m n e         -- ^ 
+    -> (e -> e)             -- ^ 
+    -> Matrix m n e
+mapColElems = mapSliceElems @'[0, c] @'[m, 1] @'[m, n] @e
+{-# INLINE mapColElems #-}
+
+-- | Constraints for 'mapColElems' function.
+type MapColElems (c :: Nat) (m :: Nat) (n :: Nat) e =
+    MapSliceElems '[0, c] '[m, 1] '[m, n] e
+
+---------------------------------------------------------------------------------------------------
+type family ReverseIndex (index :: [Nat]) :: [Nat] where
+    ReverseIndex '[i, j] = '[j, i]
+
+type TransposeGo m n e index = GetSliceElems (ReverseIndex index) [1, 1] [m, n] e
+$(genDefunSymbols [''TransposeGo])
+
+-- | Transpose a matrix.
+--
+-- __Note:__ at the moment(GHC-8.2.1) the compiler generates suboptimal core for this function.
+-- Expect it to be slower than most of the functions in the package.
+transpose :: forall m n e.
+    (Transpose m n e)
+    => Matrix m n e         -- ^ 
+    -> Matrix n m e
+transpose m = generate @'[n, m] @e @([Nat] ~> Constraint) @(TransposeGoSym3 m n e) go
+    where
+        go :: forall (index :: [Nat]).
+            (TransposeGo m n e index)
+            => Proxy index -> e
+        go _ = head $ getSliceElems @(ReverseIndex index) @[1, 1] m
+{-# INLINE transpose #-}
+
+-- | Constraints for 'transpose' function.
+type Transpose m n e =
+    ( IsMatrix m n e
+    , IsMatrix n m e
+    , Generate '[n, m] e ([Nat] ~> Constraint) (TransposeGoSym3 m n e)
+    )
+
+---------------------------------------------------------------------------------------------------
+-- Matrix multiplication.
+---------------------------------------------------------------------------------------------------
+-- | Shape of the result of matrix multiplication.
+type family MatrixMultDims (dims0 :: [Nat]) (dims1 :: [Nat]) :: [Nat] where
+    MatrixMultDims '[m, n] '[n, o] = '[m, o]  -- matrix m*n mult by matrix n*o makes matrix m*o
+    MatrixMultDims '[n   ] '[n, o] = '[o   ]  -- vector n   mult by matrix n*o makes vector o
+    MatrixMultDims '[m, n] '[n   ] = '[m   ]  -- matrix m*n mult by vector n   makes vector m
+    MatrixMultDims a       b       =
+        TypeError (
+            'Text "Matrices of shapes "
+            ':<>: 'ShowType a
+            ':<>: 'Text " and "
+            ':<>: 'ShowType b
+            ':<>: 'Text " are incompatible for multiplication.")
+
+-- | Matrix multiplication.
+class MatrixMult (dims0 :: [Nat]) (dims1 :: [Nat]) e where
+    -- | Multiply two matrices, or matrix and vector. Matrices (or matrix and vector) must have compatible dimensions.
+    mult :: 
+        ( IsTensor dims0 e
+        , IsTensor dims1 e
+        , IsTensor (MatrixMultDims dims0 dims1) e
+        )
+        => Tensor dims0 e                           -- ^ 
+        -> Tensor dims1 e                           -- ^ 
+        -> Tensor (MatrixMultDims dims0 dims1) e
+
+-- | Get 0-th element of an index.
+type family Index0 (index :: [Nat]) :: Nat where
+    Index0 (i ': _) = i
+
+-- | Get 1-st element of an index.
+type family Index1 (index :: [Nat]) :: Nat where
+    Index1 (_ ': j ': _ ) = j
+
+-------------------------------------------------------------------------------
+type MultMatMatGo (m :: Nat) (n :: Nat) (o :: Nat) e (index :: [Nat]) =
+    ( GetRowElems (Index0 index) m n e
+    , GetColElems (Index1 index) n o e
+    , U.Sum n e
+    , U.ZipWith n
+    )
+$(genDefunSymbols [''MultMatMatGo])
+
+-- | Multiply two matrices.
+instance ( Num e
+         , Generate (MatrixMultDims '[m, n] '[n, o]) e ([Nat] ~> Constraint) (MultMatMatGoSym4 m n o e)
+         ) =>
+         MatrixMult '[m, n] '[n, o] e where
+    mult m0 m1 = generate @(MatrixMultDims '[m, n] '[n, o]) @e @([Nat] ~> Constraint) @(MultMatMatGoSym4 m n o e) go
+        where
+            go :: forall (index :: [Nat]).
+                ( GetRowElems (Index0 index) m n e
+                , GetColElems (Index1 index) n o e
+                , U.Sum n e
+                , U.ZipWith n
+                ) =>
+                Proxy index -> e
+            go _ = go' @(Index0 index) @(Index1 index)
+
+            go' :: forall (i :: Nat) (j :: Nat).
+                ( GetRowElems i m n e
+                , GetColElems j n o e
+                , U.Sum n e
+                , U.ZipWith n
+                ) =>
+                e
+            go' = U.sum @n (U.zipWith @n (*) irow jcol)
+                where
+                    irow = getRowElems @i m0
+                    jcol = getColElems @j m1
+    {-# INLINE mult #-}
+
+-------------------------------------------------------------------------------
+type MultVecMatGo (m :: Nat) (n :: Nat) (o :: Nat) e (index :: [Nat]) =
+    ( GetColElems (Index0 index) n o e
+    , U.Sum n e
+    , U.ZipWith n
+    )
+$(genDefunSymbols [''MultVecMatGo])
+
+-- | Multiply vector and matrix.
+instance ( Num e
+         , Generate (MatrixMultDims '[n] '[n, o]) e ([Nat] ~> Constraint) (MultVecMatGoSym4 m n o e)
+         ) =>
+         MatrixMult '[n] '[n, o] e where
+    mult v m = generate @(MatrixMultDims '[n] '[n, o]) @e @([Nat] ~> Constraint) @(MultVecMatGoSym4 m n o e) go
+        where
+            go :: forall (index :: [Nat]).
+                ( GetColElems (Index0 index) n o e
+                , U.Sum n e
+                , U.ZipWith n
+                ) =>
+                Proxy index -> e
+            go _ = go' @(Index0 index)
+
+            go' :: forall (c :: Nat).
+                ( GetColElems c n o e
+                , U.Sum n e
+                , U.ZipWith n
+                ) =>
+                e
+            go' = U.sum @n (U.zipWith @n (*) irow jcol)
+                where
+                    irow = toList v
+                    jcol = getColElems @c m
+    {-# INLINE mult #-}
+
+-------------------------------------------------------------------------------
+type MultMatVecGo (m :: Nat) (n :: Nat) (o :: Nat) e (index :: [Nat]) =
+    ( GetRowElems (Index0 index) m n e
+    , U.Sum n e
+    , U.ZipWith n
+    )
+$(genDefunSymbols [''MultMatVecGo])
+
+-- | Multiply matrix and vector.
+instance ( Num e
+         , Generate (MatrixMultDims '[m, n] '[n]) e ([Nat] ~> Constraint) (MultMatVecGoSym4 m n o e)
+         ) =>
+         MatrixMult '[m, n] '[n] e where
+    mult m v = generate @(MatrixMultDims '[m, n] '[n]) @e @([Nat] ~> Constraint) @(MultMatVecGoSym4 m n o e) go
+        where
+            go :: forall (index :: [Nat]).
+                ( GetRowElems (Index0 index) m n e
+                , U.Sum n e
+                , U.ZipWith n
+                ) =>
+                Proxy index -> e
+            go _ = go' @(Index0 index)
+
+            go' :: forall (r :: Nat).
+                ( GetRowElems r m n e
+                , U.Sum n e
+                , U.ZipWith n
+                ) =>
+                e
+            go' = U.sum @n (U.zipWith @n (*) irow jcol)
+                where
+                    irow = getRowElems @r m
+                    jcol = toList v
+    {-# INLINE mult #-}
+
+---------------------------------------------------------------------------------------------------
+type family MinorMatrixNewIndex (cutIndex :: Nat) (index :: Nat) :: Nat where
+    MinorMatrixNewIndex 0  i = i + 1
+    MinorMatrixNewIndex ci i = MinorMatrixNewIndex' ci i (i <=? ci - 1)
+
+--
+type family MinorMatrixNewIndex' (cutIndex :: Nat) (index :: Nat) (indexLTcutIndex :: Bool) :: Nat where
+    MinorMatrixNewIndex' ci i 'True  = i
+    MinorMatrixNewIndex' ci i 'False = i + 1
+
+type MinorMatrixGo (i :: Nat) (j :: Nat) (n :: Nat) e (index :: [Nat]) =
+    (GetSliceElems [ (MinorMatrixNewIndex i (Index0 index))
+                   , (MinorMatrixNewIndex j (Index1 index))
+                   ]
+                   [1, 1]
+                   [n, n]
+                   e
+    )
+$(genDefunSymbols [''MinorMatrixGo])
+
+-- | Minor matrix is a matrix made by deleting @i@-th row and @j@-th column from given square matrix.
+--
+-- __Note:__ at the moment(GHC-8.2.1) the compiler generates suboptimal core for this function.
+-- Expect it to be slower than most of the functions in the package.
+minorMatrix :: forall (i :: Nat) (j :: Nat) (n :: Nat) e.
+    (Generate ([n - 1, n - 1]) e ([Nat] ~> Constraint) (MinorMatrixGoSym4 i j n e))
+    => Matrix n n e                 -- ^ 
+    -> Matrix (n - 1) (n - 1) e     -- ^ 
+minorMatrix m = generate @([n - 1, n - 1]) @e @([Nat] ~> Constraint) @(MinorMatrixGoSym4 i j n e) go
+    where
+        go :: forall (index :: [Nat]).
+            (MinorMatrixGo i j n e index) =>
+            Proxy index -> e
+        go _ = go' @(MinorMatrixNewIndex i (Index0 index)) @(MinorMatrixNewIndex j (Index1 index))
+
+        go' :: forall (r :: Nat) (c :: Nat). (GetSliceElems [r, c] [1, 1] [n, n] e) => e
+        go' = head $ getSliceElems @[r, c] @[1, 1] @[n, n] @e m
+{-# INLINE minorMatrix #-}
+
+-- | Constraint for 'minorMatrix' function.
+type MinorMatrix (i :: Nat) (j :: Nat) (n :: Nat) e =
+    Generate ([n - 1, n - 1]) e ([Nat] ~> Constraint) (MinorMatrixGoSym4 i j n e)
+
+---------------------------------------------------------------------------------------------------
+-- | Determinant of a matrix.
+class Determinant (n :: Nat) e where
+    determinant :: (Num e) => Matrix n n e -> e
+
+instance {-# OVERLAPPING #-}
+    (Num e, IsMatrix 2 2 e)
+    => Determinant 2 e
+    where
+    determinant m =
+        withTensor m $ \a b c d -> a * d - b * c
+    {-# INLINE determinant #-}
+
+instance {-# OVERLAPPING #-}
+    (Num e, IsMatrix 3 3 e)
+    => Determinant 3 e
+    where
+    determinant m =
+        withTensor m $ \a b c d e f g h i ->
+            a * (e * i - f * h) - b * (d * i - f * g) + c * (d * h - e * g)
+    {-# INLINE determinant #-}
+
+-- | Sign is positive for even @n@ and negative for odd.
+class Sign (n :: Nat) where
+    sign :: (Num a) => a
+
+instance {-# OVERLAPPING #-} Sign 0 where
+    sign = 1
+    {-# INLINE sign #-}
+
+instance {-# OVERLAPPABLE #-} (Sign (n - 1)) => Sign n where
+    sign = (-1) * sign @(n - 1)
+    {-# INLINE sign #-}
+
+type DeterminantGo (n :: Nat) e (j :: Nat) =
+    ( Determinant (n - 1) e
+    , TensorElem [0, j] [n, n] e
+    , MinorMatrix 0 j n e
+    , Sign j
+    )
+$(genDefunSymbols [''DeterminantGo])
+
+
+-- | __Note:__ at the moment(GHC-8.2.1) the compiler generates suboptimal core for this method.
+-- Expect it to be slower than most of the functions in the package.
+instance {-# OVERLAPPABLE #-}
+    ( Num e
+    , IsMatrix n n e
+    , DemoteWith Nat (Nat ~> Constraint) (DeterminantGoSym2 n e) (NatsFromTo 0 (n - 1))
+    , U.Sum n e
+    )
+    => Determinant n e
+    where
+    determinant m = U.sum @n $ demoteWith @Nat @(Nat ~> Constraint) @(DeterminantGoSym2 n e) @(NatsFromTo 0 (n - 1)) go
+        where
+            go :: forall (j :: Nat).
+                (DeterminantGo n e j)
+                => Proxy j -> e
+            go _ = sign @j * el * determinant (minorMatrix @0 @j @n @e m)
+                where
+                    el = m ^. tensorElem @[0, j]
+    {-# INLINE determinant #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Minor is the determinant of minor matrix.
+--
+-- __Note:__ at the moment(GHC-8.2.1) the compiler generates suboptimal core for this function.
+-- Expect it to be slower than most of the functions in the package.
+minor :: forall (i :: Nat) (j :: Nat) (n :: Nat) e.
+    (Minor i j n e)
+    => Matrix n n e         -- ^
+    -> e
+minor = determinant @(n - 1) @e . minorMatrix @i @j @n @e
+{-# INLINE minor #-}
+
+-- | Constraint for 'minor' function.
+type Minor (i :: Nat) (j :: Nat) (n :: Nat) e =
+    ( MinorMatrix i j n e
+    , Determinant (n - 1) e
+    , Num e
+    )
+
+---------------------------------------------------------------------------------------------------
+-- | @'cofactor' \@i \@j@ is the @'minor' \@i \@j@ multiplied by @(-1) ^ (i + j)@.
+--
+-- __Note:__ at the moment(GHC-8.2.1) the compiler generates suboptimal core for this function.
+-- Expect it to be slower than most of the functions in the package.
+cofactor :: forall (i :: Nat) (j :: Nat) (n :: Nat) e.
+    (Cofactor i j n e)
+    => Matrix n n e         -- ^
+    -> e
+cofactor m = sign @(i + j) * minor @i @j @n @e m
+{-# INLINE cofactor #-}
+
+-- | Constraint for 'cofactor' function.
+type Cofactor (i :: Nat) (j :: Nat) (n :: Nat) e =
+    ( Minor i j n e
+    , Sign (i + j)
+    )
+
+---------------------------------------------------------------------------------------------------
+type CofactorMatrixGo (n :: Nat) e (index :: [Nat]) =
+    (Cofactor (Index0 index) (Index1 index) n e)
+$(genDefunSymbols [''CofactorMatrixGo])
+
+-- | The matrix formed by all of the cofactors of given square matrix.
+--
+-- __Note:__ at the moment(GHC-8.2.1) the compiler generates suboptimal core for this function.
+-- Expect it to be slower than most of the functions in the package.
+cofactorMatrix :: forall (n :: Nat) e.
+    (CofactorMatrix n e)
+    => Matrix n n e         -- ^
+    -> Matrix n n e
+cofactorMatrix m = generate @([n, n]) @e @([Nat] ~> Constraint) @(CofactorMatrixGoSym2 n e) go
+    where
+        go :: forall (index :: [Nat]).
+            (Cofactor (Index0 index) (Index1 index) n e) =>
+            Proxy index -> e
+        go _ = go' @(Index0 index) @(Index1 index)
+
+        go' :: forall (i :: Nat) (j :: Nat).
+            (Cofactor i j n e) => e
+        go' = cofactor @i @j @n @e m
+{-# INLINE cofactorMatrix #-}
+
+-- | Constraint for 'cofactorMatrix' function.
+type CofactorMatrix (n :: Nat) e =
+    Generate [n, n] e ([Nat] ~> Constraint) (CofactorMatrixGoSym2 n e)
+
+---------------------------------------------------------------------------------------------------
+-- | Adjugate matrix of given square matrix is the transpose of its cofactor matrix.
+--
+-- @adjugateMatrix = transpose . cofactorMatrix@
+--
+-- __Note:__ at the moment(GHC-8.2.1) the compiler generates suboptimal core for this function.
+-- Expect it to be slower than most of the functions in the package.
+adjugateMatrix :: forall (n :: Nat) e.
+    (AdjugateMatrix n e)
+    => Matrix n n e         -- ^
+    -> Matrix n n e
+adjugateMatrix = transpose . cofactorMatrix
+{-# INLINE adjugateMatrix #-}
+
+-- | Constraint for 'adjugateMatrix' function.
+type AdjugateMatrix (n :: Nat) e =
+    (CofactorMatrix n e, Transpose n n e)
+
+---------------------------------------------------------------------------------------------------
+-- | Inverse of the matrix.
+--
+-- __Note:__ at the moment(GHC-8.2.1) the compiler generates suboptimal core for this function.
+-- Expect it to be slower than most of the functions in the package.
+inverse :: forall (n :: Nat) e.
+    (Inverse n e)
+    => Matrix n n e         -- ^
+    -> Matrix n n e
+inverse m = scale (adjugateMatrix m) (1 / determinant m)
+{-# INLINE inverse #-}
+
+-- | Constraint for 'inverse' function.
+type Inverse (n :: Nat) e =
+    (AdjugateMatrix n e, Determinant n e, Fractional e, Scale '[n, n] e)
+
+---------------------------------------------------------------------------------------------------
+-- | Generate instance of a matrix.
+genMatrixInstance :: Int       -- ^ Number of rows.
+                  -> Int       -- ^ Number of columns.
+                  -> Name      -- ^ Type of elements.
+                  -> Q [Dec]
+genMatrixInstance m n elemTypeName = genTensorInstance (N.fromList [m, n]) elemTypeName
+ src/Data/Tensor/Static.hs view
@@ -0,0 +1,1529 @@+{-# LANGUAGE TypeFamilies            #-}
+{-# LANGUAGE MultiParamTypeClasses   #-}
+{-# LANGUAGE TypeSynonymInstances    #-}           
+{-# LANGUAGE DataKinds               #-}
+{-# LANGUAGE KindSignatures          #-}
+{-# LANGUAGE TypeOperators           #-}
+{-# LANGUAGE FlexibleInstances       #-}
+{-# LANGUAGE FlexibleContexts        #-}           
+{-# LANGUAGE ScopedTypeVariables     #-}
+{-# LANGUAGE DeriveGeneric           #-}
+{-# LANGUAGE DeriveAnyClass          #-}
+{-# LANGUAGE TemplateHaskell         #-}
+{-# LANGUAGE StandaloneDeriving      #-}           
+{-# LANGUAGE UndecidableInstances    #-}
+{-# LANGUAGE TypeApplications        #-}
+{-# LANGUAGE TypeInType              #-}
+{-# LANGUAGE AllowAmbiguousTypes     #-}
+{-# LANGUAGE GADTs                   #-}
+{-# LANGUAGE TypeFamilyDependencies  #-}
+{-# LANGUAGE ConstraintKinds         #-}
+{-# LANGUAGE UndecidableSuperClasses #-}
+{-# LANGUAGE RankNTypes              #-}
+{-# LANGUAGE InstanceSigs            #-}
+
+-----------------------------------------------------------------------------
+-- |
+-- Module      :  Data.Tensor.Static
+-- Copyright   :  (C) 2017 Alexey Vagarenko
+-- License     :  BSD-style (see LICENSE)
+-- Maintainer  :  Alexey Vagarenko (vagarenko@gmail.com)
+-- Stability   :  experimental
+-- Portability :  non-portable
+--
+----------------------------------------------------------------------------
+
+module Data.Tensor.Static (
+    -- * Tensor class
+      IsTensor(..)
+    , Tensor(..)
+    , TensorConstructor
+    , PositiveDims
+    -- * Construction
+    , fill
+    , zero
+    , enumFromN
+    , EnumFromN
+    , enumFromStepN
+    , EnumFromStepN
+    , generate
+    , Generate
+    -- * Tensor shape
+    , dimensions
+    , elemsNumber
+    , subtensorsElemsNumbers
+    , ElemsNumber
+    , SubtensorsElemsNumbers
+    , FlattenIndex
+    , AllIndexes
+    , NatsFromTo
+    , NormalizeDims
+    -- * Modifying tensors
+    , withTensor
+    , add
+    , Add
+    , diff
+    , Diff
+    , scale
+    , Scale
+    -- ** Concatenation
+    , cons
+    , Cons
+    , ConsSubtensorDims
+    , DimsAfterCons
+    , snoc
+    , Snoc
+    , SnocSubtensorDims
+    , DimsAfterSnoc
+    , append
+    , Append
+    , DimsAfterAppend
+    -- ** Removing slices
+    , remove
+    , Remove
+    , DimsAfterRemove
+    -- * Conversion
+    , NestedList
+    , toNestedList
+    , ToNestedList
+    -- * Tensor elements
+    , tensorElem
+    , TensorElem
+    -- * Subtensors
+    , Subtensor
+    , SubtensorStartIndex
+    , SubtensorDims
+    , subtensor
+    , SubtensorCtx
+    , getSubtensor
+    , GetSubtensor
+    , getSubtensorElems
+    , GetSubtensorElems
+    , setSubtensor
+    , SetSubtensor
+    , setSubtensorElems
+    , SetSubtensorElems
+    , mapSubtensorElems
+    , MapSubtensorElems
+    -- * Slices
+    , SliceEndIndex
+    , ElemsInSlice
+    , slice
+    , Slice
+    , getSlice
+    , GetSlice
+    , getSliceElems
+    , GetSliceElems
+    , setSlice
+    , SetSlice
+    , setSliceElems
+    , SetSliceElems
+    , mapSliceElems
+    , MapSliceElems
+    -- * Constraints for instances
+    -- Tensors are instances of 'MonoFunctor', 'MonoFoldable', 'MonoTraversable', 'MonoZip'
+    -- with the following constraints:
+    , MonoFunctorCtx
+    , MonoFoldableCtx
+    , MonoTraversableCtx
+    , MonoZipCtx
+    -- * Pointers
+    , unsafeWithTensorPtr
+) where
+
+import Control.Lens                 (Lens', lens, Each(..), traversed)
+import Data.Containers              (MonoZip(..))
+import Data.Function.NAry           (NAry, ApplyNAry(..))
+import Data.Kind                    (Type)
+import Data.List                    (intersperse)
+import Data.List.Split              (chunksOf)
+import Data.MonoTraversable         (MonoFunctor(..), MonoFoldable(..), MonoTraversable(..), Element)
+import Data.Proxy                   (Proxy(..))
+import Data.Singletons.Prelude.List (Tail, Product, Length)
+import Data.Type.Equality           (type (==))
+import Data.Type.Bool               (If, type (&&))
+import Foreign.Storable             (Storable(..))
+import Foreign.Ptr                  (Ptr, castPtr)
+import Foreign.Marshal.Utils        (with)
+import GHC.TypeLits                 (Nat, KnownNat, natVal, type (+), type (-), type (<=?), type (*), TypeError, ErrorMessage(..))
+import Type.List                    (MkCtx, DemoteWith(..), KnownNats(..))
+import qualified Data.List.Unrolled as U
+
+---------------------------------------------------------------------------------------------------
+-- | Version of 'natVal' with explicit type application.
+natVal' :: forall (n :: Nat). (KnownNat n) => Int
+natVal' = fromInteger $ natVal (Proxy @n)
+{-# INLINE natVal' #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Check if all dimensions are greater than 0.
+type family PositiveDims (dims :: [Nat]) :: Bool where
+    PositiveDims '[]       = 'True
+    PositiveDims (d ': ds) = 1 <=? d && PositiveDims ds
+
+-- | Convert multidimentional @index@ in tensor of shape @dims@ to flat index.
+--   @index@ parameter must have the same length as @dims@.
+--
+-- >>> :kind! FlattenIndex '[1,1,1] '[2,3,4]
+-- FlattenIndex '[1,1,1] '[2,3,4] :: Nat
+-- = 17
+type FlattenIndex (index :: [Nat]) (dims :: [Nat]) = FlattenIndex' index (SubtensorsElemsNumbers dims)
+
+type family FlattenIndex' (index :: [Nat]) (elemNumbers :: [Nat]) :: Nat where
+    FlattenIndex' '[]       '[]       = 0
+    FlattenIndex' (i ': is) '[]       = TypeError ('Text "FlattenIndex: Too many dimensions in the index for subtensor.")
+    FlattenIndex' '[]       (n ': ns) = TypeError ('Text "FlattenIndex: Not enough dimensions in the index for subtensor.")
+    FlattenIndex' (i ': is) (n ': ns) = i * n + FlattenIndex' is ns
+
+-- | Remove unit dimentions, i.e. dimensions with size @1@.
+-- 
+-- >>> :kind! NormalizeDims '[2, 1, 3]
+-- '[2, 3]
+type family NormalizeDims (dims :: [Nat]) :: [Nat] where
+    NormalizeDims '[]       = '[]
+    NormalizeDims (1 ': xs) = NormalizeDims xs
+    NormalizeDims (x ': xs) = x ': NormalizeDims xs
+
+-- | Sequence of all indexes in a tensor of shape @dims@.
+--
+-- >>> :kind! AllIndexes '[2,3,4]
+-- AllIndexes '[2,3,4] :: [[Nat]]
+-- = '['[0, 0, 0], '[0, 0, 1], '[0, 0, 2], '[0, 0, 3], '[0, 1, 0],
+--     '[0, 1, 1], '[0, 1, 2], '[0, 1, 3], '[0, 2, 0], '[0, 2, 1],
+--     '[0, 2, 2], '[0, 2, 3], '[1, 0, 0], '[1, 0, 1], '[1, 0, 2],
+--     '[1, 0, 3], '[1, 1, 0], '[1, 1, 1], '[1, 1, 2], '[1, 1, 3],
+--     '[1, 2, 0], '[1, 2, 1], '[1, 2, 2], '[1, 2, 3]]
+type AllIndexes (dims :: [Nat]) = Sequence (IndexesRanges dims)
+
+-- | Type-level 'sequence'.
+type family Sequence (xss :: [[k]]) :: [[k]] where
+    Sequence '[]       = '[ '[] ]
+    Sequence (x ': xs) = Sequence' x (Sequence xs)
+
+type family Sequence' (xs :: [k]) (yss :: [[k]]) :: [[k]] where
+    Sequence' '[]       _  = '[]
+    Sequence' (x ': xs) ys = Sequence'' x ys ++ Sequence' xs ys
+
+type family Sequence'' (x :: k) (yss :: [[k]]) :: [[k]] where
+    Sequence'' _ '[]       = '[]
+    Sequence'' x (y ': ys) = '[ x ': y ] ++ Sequence'' x ys
+
+-- | Append two type-level lists.
+infixr 5 ++
+type family (++) (xs :: [k]) (ys :: [k]) :: [k] where
+    '[]       ++ ys = ys
+    (x ': xs) ++ ys = x ': (xs ++ ys)
+
+-- | Ranges for each dimension of an index of the tensor.
+-- 
+-- >>> :kind! IndexesRanges '[2,3,4]
+-- IndexesRanges '[2,3,4] :: [[Nat]]
+-- = '['[0, 1], '[0, 1, 2], '[0, 1, 2, 3]]
+type family IndexesRanges (dims :: [Nat]) :: [[Nat]] where
+    IndexesRanges '[]       = '[]
+    IndexesRanges (d ': ds) = IndexesRanges' (d ': ds) (1 <=? d)
+
+type family IndexesRanges' (dims :: [Nat]) (dimPositive :: Bool) :: [[Nat]] where
+    IndexesRanges' (d ': ds) 'True  = NatsFromTo 0 (d - 1) ': IndexesRanges ds
+    IndexesRanges' (d ':  _) 'False =
+        TypeError ('Text "IndexesRanges: Tensor has non-positive dimension: " ':<>: 'ShowType d)
+
+-- | Generate range of naturals starting from @from@ param inclusive and up to @to@ param inclusive.
+type NatsFromTo (from :: Nat) (to :: Nat) = NatsFromTo' from to (from <=? to)
+
+type family NatsFromTo' (from :: Nat) (to :: Nat) (fromLTEto :: Bool) :: [Nat] where
+    NatsFromTo' _ _ 'False = '[]
+    NatsFromTo' f t 'True  = f ': NatsFromTo' (f + 1) t (f + 1 <=? t)
+
+---------------------------------------------------------------------------------------------------
+-- | Data family of unboxed tensors. Dimensions of a tensor are represented as type-level list of 
+--   naturals. For instance, @Tensor [3] Float@ is a vector of 3 'Float' elements; @Tensor [4,3] Double@ 
+--   is a matrix with 4 rows 3 columns of 'Double' and so on.
+class (PositiveDims dims ~ 'True, KnownNats dims) => IsTensor (dims :: [Nat]) e where
+    {-# MINIMAL tensor, unsafeFromList, toList #-}
+
+    -- | Tensor data constructor for given size and element type.
+    data Tensor dims e :: Type
+
+    -- | Alias for a concrete tensor data constructor.
+    -- 
+    -- >>> tensor @[2,2] @Int 0 1 2 3
+    -- Tensor'2'2 [[0,1],[2,3]]
+    tensor :: TensorConstructor dims e
+
+    -- | Build tensor from the list. The list must contain at least 'length' elements or method will throw an exception.
+    unsafeFromList :: [e] -> Tensor dims e
+
+    -- | Convert tensor to list.
+    toList :: Tensor dims e -> [] e
+
+-- | Type of a tensor data constructor.
+--
+-- >>> :kind! TensorConstructor '[2,2] Float
+-- TensorConstructor '[2,2] Float :: *
+-- = Float -> Float -> Float -> Float -> Tensor '[2, 2] Float
+type TensorConstructor (dims :: [Nat]) (e :: Type) = NAry (ElemsNumber dims) e (Tensor dims e)
+
+-- | Number of elements in a tensor.
+type family ElemsNumber (dims :: [Nat]) :: Nat where
+    ElemsNumber '[]       = 1
+    ElemsNumber (d ': ds) = d * ElemsNumber ds
+
+---------------------------------------------------------------------------------------------------
+-- | Scalar is a degenerate tensor.
+instance IsTensor '[] e where
+    newtype Tensor '[] e = Scalar e
+    
+    tensor = Scalar
+    {-# INLINE tensor #-}
+
+    unsafeFromList (a:_) = Scalar a
+    unsafeFromList _     = error "Not enough elements to build a Tensor of shape []."
+    {-# INLINE unsafeFromList #-}
+
+    toList (Scalar a) = [a]
+    {-# INLINE toList #-}
+
+---------------------------------------------------------------------------------------------------
+instance {-# OVERLAPPABLE #-}
+         ( Show (NestedList (Length dims) e)
+         , IsTensor dims e
+         , ToNestedListWrk dims e
+         , KnownNats dims
+         ) =>
+         Show (Tensor dims e)
+    where
+    show t = "Tensor'" ++ dims ++ " " ++ show (toNestedList t)
+        where
+            dims = concat $ intersperse "\'" $ map show (dimensions @dims)
+    {-# INLINE show #-}
+
+instance {-# OVERLAPPING #-} (Show e) => Show (Tensor '[] e) where
+    show (Scalar e) = "Scalar " ++ show e
+    {-# INLINE show #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Pass tensor elements to a function.
+--
+-- >>> withTensor (matrix @2 @2 @Float 0 1 2 3) (\a b c d -> a * d - b * c)
+-- -2.0
+--
+-- >>> withTensor (vector @2 @Float 3 4) (\x y -> sqrt $ x * x + y * y)
+-- 5.0
+withTensor :: forall dims e r.
+    ( IsTensor dims e
+    , ApplyNAry (ElemsNumber dims) e r
+    )
+    => Tensor dims e                    -- ^ The tensor.
+    -> (NAry (ElemsNumber dims) e r)    -- ^ Function with number of params equal to number of tensor elements.
+    -> r
+withTensor t f = applyNAry @(ElemsNumber dims) @e @r f (toList t)
+{-# INLINE withTensor #-}
+
+-- | Dimensions of a tensor.
+dimensions :: forall (dims :: [Nat]). (KnownNats dims) => [Int]
+dimensions = natsVal @dims
+{-# INLINE dimensions #-}
+
+-- | Number of elements in a tensor.
+elemsNumber :: forall (dims :: [Nat]). (KnownNat (ElemsNumber dims)) => Int
+elemsNumber = natVal' @(ElemsNumber dims)
+{-# INLINE elemsNumber #-}
+
+-- | Number of elements of all subtensors of a tensor.
+--
+-- >>> subtensorsElemsNumbers @[2,3,4]
+-- [12,4,1]
+-- 
+-- >>> subtensorsElemsNumbers @[4,4]
+-- [4,1]
+subtensorsElemsNumbers :: forall (dims :: [Nat]). (KnownNats (SubtensorsElemsNumbers dims)) => [Int]
+subtensorsElemsNumbers = natsVal @(SubtensorsElemsNumbers dims)
+{-# INLINE subtensorsElemsNumbers #-}
+
+-- | Add two tensors element-wise.
+add :: (Add dims e) => Tensor dims e -> Tensor dims e -> Tensor dims e
+add = ozipWith (+)
+{-# INLINE add #-}
+
+-- | Constraints for 'add'.
+type Add (dims :: [Nat]) e =
+    ( IsTensor dims e
+    , Num e
+    , U.ZipWith (ElemsNumber dims)
+    , U.Zip (ElemsNumber dims)
+    , U.Unzip (ElemsNumber dims)
+    , U.Map (ElemsNumber dims)
+    )
+
+-- | Substract two tensors element-wise.
+diff :: (Diff dims e) => Tensor dims e -> Tensor dims e -> Tensor dims e
+diff = ozipWith (-)
+{-# INLINE diff #-}
+
+-- | Constraints for 'diff'.
+type Diff (dims :: [Nat]) e =
+    ( IsTensor dims e
+    , Num e
+    , U.ZipWith (ElemsNumber dims)
+    , U.Zip (ElemsNumber dims)
+    , U.Unzip (ElemsNumber dims)
+    , U.Map (ElemsNumber dims)
+    )
+
+-- | Multiply every element of a tensor by given value.
+scale :: (Scale dims e) => Tensor dims e -> e -> Tensor dims e
+scale t k = omap (*k) t
+{-# INLINE scale #-}
+
+-- | Constraints for 'scale'.
+type Scale (dims :: [Nat]) e =
+    ( IsTensor dims e
+    , Num e
+    , U.Map (ElemsNumber dims)
+    )
+
+-- | Tensor filled with given elements.
+fill :: forall (dims :: [Nat]) e. (Fill dims e) => e -> Tensor dims e
+fill = unsafeFromList . U.replicate @(ElemsNumber dims)
+{-# INLINE fill #-}
+
+-- | Constraints for 'fill'.
+type Fill (dims :: [Nat]) e = (IsTensor dims e, U.Replicate (ElemsNumber dims))
+
+-- | Tensor filled with zeros.
+zero :: (Fill dims e, Num e) => Tensor dims e
+zero = fill 0
+{-# INLINE zero #-}
+
+-- | Tensor which elements are enumeration starting from given value.
+enumFromN :: forall (dims :: [Nat]) e.
+    (EnumFromN dims e)
+    => e                       -- ^ Starting value.
+    -> Tensor dims e
+enumFromN = unsafeFromList . U.enumFromN @(ElemsNumber dims)
+{-# INLINE enumFromN #-}
+
+-- | Constraints for 'enumFromN' function.
+type EnumFromN (dims :: [Nat]) e =
+    ( IsTensor dims e
+    , U.EnumFromN (ElemsNumber dims)
+    , Num e
+    )
+
+-- | Tensor which elements are enumeration starting from given value with given step.
+enumFromStepN :: forall (dims :: [Nat]) e.
+    (EnumFromStepN dims e)
+    => e                   -- ^ Starting value.
+    -> e                   -- ^ Step.
+    -> Tensor dims e
+enumFromStepN a = unsafeFromList . U.enumFromStepN @(ElemsNumber dims) a
+{-# INLINE enumFromStepN #-}
+
+-- | Constraints for 'enumFromStepN' function.
+type EnumFromStepN (dims :: [Nat]) e =
+    ( IsTensor dims e
+    , U.EnumFromStepN (ElemsNumber dims)
+    , Num e
+    )
+
+---------------------------------------------------------------------------------------------------
+-- | Generate a tensor by applying the function to each index.
+--   @ctx@ type parameter is a producer of constraint of kind @kctx@ for each index. See 'TypeLits.List.MkCtx' for more info.
+--
+-- >>> import Data.Singletons
+-- >>> type Ctx (dims :: [Nat]) (index :: [Nat]) = KnownNat (FlattenIndex index dims); $(genDefunSymbols [''Ctx])
+-- >>> generate @[2,3,4] @Int @([Nat] ~> Constraint) @(CtxSym1 [2,3,4]) $ \(Proxy :: Proxy index) -> fromIntegral $ natVal (Proxy @(FlattenIndex index [2,3,4]))
+-- Tensor'2'3'4 [[[0,1,2,3],[4,5,6,7],[8,9,10,11]],[[12,13,14,15],[16,17,18,19],[20,21,22,23]]]
+generate :: forall (dims :: [Nat]) (e :: Type) (kctx :: Type) (ctx :: kctx).
+    (Generate dims e kctx ctx)
+    =>  (forall (index :: [Nat]).
+        (MkCtx [Nat] kctx ctx index)
+        => Proxy index
+        -> e
+        ) -- ^ Generator function that takes index as type parameter will be called for each index.
+    -> Tensor dims e
+generate f = unsafeFromList (demoteWith @[Nat] @kctx @ctx @(AllIndexes dims) f)
+{-# INLINE generate #-}
+
+-- | Constraints for 'generate' function.
+type Generate (dims :: [Nat]) (e :: Type) (kctx :: Type) (ctx :: kctx) =
+    ( IsTensor dims e
+    , DemoteWith [Nat] kctx ctx (AllIndexes dims)
+    )
+
+---------------------------------------------------------------------------------------------------
+-- | Nested list of given @depth@.
+--
+-- >>> :kind! NestedList 3 Float
+-- [[[Float]]]
+--
+-- >>> :kind! NestedList 2 Float
+-- [[Float]]
+type family NestedList (depth :: Nat) (e :: Type) :: Type where
+    NestedList 0 e = e
+    NestedList n e = [NestedList (n - 1) e]
+
+-- | Convert tensor to nested list.
+toNestedList :: forall dims e. (ToNestedList dims e)
+    => Tensor dims e                    -- ^
+    -> NestedList (Length dims) e
+toNestedList = toNestedListWrk @dims @e . toList
+{-# INLINE toNestedList #-}
+
+-- | Constraints for 'toNestedList' function.
+type ToNestedList (dims :: [Nat]) e = (IsTensor dims e, ToNestedListWrk dims e)
+
+-- | Worker for 'toNestedList'.
+class ToNestedListWrk (dims :: [Nat]) e where
+    toNestedListWrk :: [e] -> NestedList (Length dims) e
+
+instance ToNestedListWrk '[] e where
+    toNestedListWrk = head
+
+instance ToNestedListWrk '[x] e where
+    toNestedListWrk = id
+    {-# INLINE toNestedListWrk #-}
+
+instance ( ToNestedListWrk (xx ': xs) e
+         , KnownNat (Product (xx ': xs))
+         , NestedList (Length (x ': xx ': xs)) e ~ [NestedList (Length (xx ': xs)) e]
+         ) => 
+         ToNestedListWrk (x ': xx ': xs) e
+    where
+    toNestedListWrk xs = map (toNestedListWrk @(xx ': xs)) $ chunksOf (natVal' @(Product (xx ': xs))) xs
+    {-# INLINABLE toNestedListWrk #-}
+
+---------------------------------------------------------------------------------------------------
+-- Subtensors
+---------------------------------------------------------------------------------------------------
+-- | Subtensor at @index@ of a tensor of shape @dims@.
+--
+-- >>> :kind! Subtensor '[] '[2,3,4] Float
+-- Subtensor '[] '[2,3,4] Float :: *
+-- = Tensor '[2, 3, 4] Float
+--
+-- >>> :kind! Subtensor '[0] '[2,3,4] Float
+-- Subtensor '[0] '[2,3,4] Float :: *
+-- = Tensor '[3, 4] Float
+--
+-- >>> :kind! Subtensor '[0,0] '[2,3,4] Float
+-- Subtensor '[0,0] '[2,3,4] Float :: *
+-- = Tensor '[4] Float
+--
+-- >>> :kind! Subtensor '[0,0,0] '[2,3,4] Float
+-- Subtensor '[0,0,0] '[2,3,4] Float :: *
+-- = Tensor '[] Float
+type Subtensor index dims e = Tensor (NormalizeDims (SubtensorDims index dims)) e
+
+-- | Number of elements of all subtensors of a tensor with given shape @dims@.
+--
+-- >>> :kind! SubtensorsElemsNumbers '[2,3,4]
+-- SubtensorsElemsNumbers '[2,3,4] :: [Nat]
+-- = '[12, 4, 1]
+--
+-- >>> :kind! SubtensorsElemsNumbers '[4,4]
+-- SubtensorsElemsNumbers '[4,4] :: [Nat]
+-- = '[4, 1]
+type SubtensorsElemsNumbers (dims :: [Nat]) = Tail (SubtensorsElemsNumbers' dims)
+
+type family SubtensorsElemsNumbers' (dims :: [Nat]) :: [Nat] where
+    SubtensorsElemsNumbers' '[]       = '[1]
+    SubtensorsElemsNumbers' (d ': ds) = SubtensorsElemsNumbers'' d (SubtensorsElemsNumbers' ds)
+
+type family SubtensorsElemsNumbers'' (dim :: Nat) (dims :: [Nat]) :: [Nat] where
+    SubtensorsElemsNumbers'' d (q ': qs) = d * q ': q ': qs
+
+-- | Shape of a subtensor of tensor of shape @dims@ located at @index@. Resulting shape is not normalized.
+--
+-- >>> :kind! SubtensorDims '[0] '[2,3,4]
+-- SubtensorDims '[0] '[2,3,4] :: [Nat]
+-- = '[1, 3, 4]
+-- 
+-- >>> :kind! SubtensorDims '[0,0] '[2,3,4]
+-- SubtensorDims '[0,0] '[2,3,4] :: [Nat]
+-- = '[1, 1, 4]
+type family SubtensorDims (index :: [Nat]) (dims :: [Nat]) :: [Nat] where
+    SubtensorDims '[]        ds       = ds
+    SubtensorDims (_ ': _ ) '[]       = TypeError ('Text "SubtensorDims: Too many dimensions in the index for subtensor.")
+    SubtensorDims (i ': is) (d ': ds) = 
+        If  (i <=? d - 1)
+            (1 ': SubtensorDims is ds)
+            (TypeError 
+                ('Text "SubtensorDims: Index "
+                ':<>: 'ShowType i
+                ':<>: 'Text " is outside of the range of dimension [0.."
+                ':<>: 'ShowType (d - 1)
+                ':<>: 'Text "]."))
+
+-- | Index of the first element of the subtensor of the tensor of shape @dims@ at @index@.
+--   This function returns index with number of dimensions equal to number of dimensions of the 
+--   tensor.
+--
+-- >>> :kind! SubtensorStartIndex '[1] '[2,3,4]
+-- SubtensorStartIndex '[1] '[2,3,4] :: [Nat]
+-- = '[1, 0, 0]
+--
+-- >>> :kind! SubtensorStartIndex '[0,1] '[2,3,4]
+-- SubtensorStartIndex '[0,1] '[2,3,4] :: [Nat]
+-- = '[0, 1, 0]
+--
+-- >>> :kind! SubtensorStartIndex '[1,1] '[2,3,4]
+-- SubtensorStartIndex '[1,1] '[2,3,4] :: [Nat]
+-- = '[1, 1, 0]
+type family SubtensorStartIndex (index :: [Nat]) (dims :: [Nat]) :: [Nat] where
+    SubtensorStartIndex '[]       '[]       = '[]
+    SubtensorStartIndex (i ': is) '[]       = TypeError ('Text "SubtensorStartIndex: Too many dimensions in the index for subtensor.")
+    SubtensorStartIndex '[]       (d ': ds) = 0 ': SubtensorStartIndex '[] ds
+    SubtensorStartIndex (i ': is) (d ': ds) = 
+        If  (i <=? d - 1)
+            (i ': SubtensorStartIndex  is ds)
+            (TypeError 
+                ('Text "SubtensorStartIndex: Index "
+                ':<>: 'ShowType i
+                ':<>: 'Text " is outside of the range of dimension [0.."
+                ':<>: 'ShowType (d - 1)
+                ':<>: 'Text "]."))
+
+---------------------------------------------------------------------------------------------------
+-- | Extract subtensor at given index.
+getSubtensor :: forall (index :: [Nat]) (dims :: [Nat]) e. 
+    (GetSubtensor index dims e)
+    => Tensor dims e            -- ^
+    -> Subtensor index dims e
+getSubtensor = getSlice @(SubtensorStartIndex index dims) @(SubtensorDims index dims) @dims @e
+{-# INLINE getSubtensor #-}
+
+-- | Constraint for 'getSubtensor' function.
+type GetSubtensor index dims e =
+    ( GetSlice (SubtensorStartIndex index dims) (SubtensorDims index dims) dims e
+    )
+
+---------------------------------------------------------------------------------------------------
+-- | Extract elements of subtensor at given index.
+--   Like 'getSubtensor', but without building actual subtensor.
+getSubtensorElems :: forall (index :: [Nat]) (dims :: [Nat]) e. 
+    (GetSubtensorElems index dims e)
+    => Tensor dims e        -- ^ 
+    -> [e]
+getSubtensorElems = getSliceElems @(SubtensorStartIndex index dims) @(SubtensorDims index dims) @dims @e
+{-# INLINE getSubtensorElems #-}
+
+-- | Constraint for 'getSubtensorElems' function.
+type GetSubtensorElems index dims e =
+    GetSliceElems (SubtensorStartIndex index dims) (SubtensorDims index dims) dims e
+
+---------------------------------------------------------------------------------------------------
+-- | Set subtensor at given index.
+setSubtensor :: forall (index :: [Nat]) (dims :: [Nat]) e.
+    (SetSubtensor index dims e)
+    => Tensor dims e               -- ^ The tensor.
+    -> Subtensor index dims e      -- ^ New subtensor.
+    -> Tensor dims e
+setSubtensor = setSlice @(SubtensorStartIndex index dims) @(SubtensorDims index dims) @dims @e
+{-# INLINE setSubtensor #-}
+
+-- | Constraint for 'setSubtensor' function.
+type SetSubtensor index dims e =
+    SetSlice (SubtensorStartIndex index dims) (SubtensorDims index dims) dims e
+
+---------------------------------------------------------------------------------------------------
+-- | Like 'setSubtensor' but takes a list of elements instead of a tensor.
+--   Returns @Nothing@ if list has not enough elements.
+setSubtensorElems :: forall (index :: [Nat]) (dims :: [Nat]) e.
+    (SetSubtensorElems index dims e)
+    => Tensor dims e            -- ^ The tensor.
+    -> [e]                      -- ^ New elements of the subtensor.
+    -> Maybe (Tensor dims e)
+setSubtensorElems = setSliceElems @(SubtensorStartIndex index dims) @(SubtensorDims index dims) @dims @e
+{-# INLINE setSubtensorElems #-}
+
+-- | Constraint for 'setSubtensorElems' function.
+type SetSubtensorElems index dims e =
+    SetSliceElems (SubtensorStartIndex index dims) (SubtensorDims index dims) dims e
+
+---------------------------------------------------------------------------------------------------
+-- | Modify subtensor elements with a function.
+mapSubtensorElems :: forall (index :: [Nat]) (dims :: [Nat]) e.
+    (MapSubtensorElems index dims e)
+    => Tensor dims e        -- ^ The tensor.
+    -> (e -> e)             -- ^ The mapping function.
+    -> Tensor dims e
+mapSubtensorElems = mapSliceElems @(SubtensorStartIndex index dims) @(SubtensorDims index dims) @dims @e
+{-# INLINE mapSubtensorElems #-}
+
+-- | Constraints for 'mapSubtensorElems'.
+type MapSubtensorElems index dims e =
+    MapSliceElems (SubtensorStartIndex index dims) (SubtensorDims index dims) dims e
+
+---------------------------------------------------------------------------------------------------
+-- | Lens for subtensor at given index.
+--
+-- >>> let t = enumFromN @[2,3,4] @Int 0
+-- >>> t
+-- Tensor'2'3'4 [[[  0,  1,  2,  3]
+--               ,[  4,  5,  6,  7]
+--               ,[  8,  9, 10, 11]]
+--              ,[[ 12, 13, 14, 15]
+--               ,[ 16, 17, 18, 19]
+--               ,[ 20, 21, 22, 23]]]
+-- >>> t ^. subtensor @'[0]
+-- Tensor'3'4    [[  0,  1,  2,  3]
+--               ,[  4,  5,  6,  7]
+--               ,[  8,  9, 10, 11]]
+-- >>> t ^. subtensor @'[1]
+-- Tensor'3'4    [[ 12, 13, 14, 15]
+--               ,[ 16, 17, 18, 19]
+--               ,[ 20, 21, 22, 23]]
+-- >>> t ^. subtensor @'[0,0]
+-- Tensor'4       [  0,  1,  2,  3]
+-- >>> t ^. subtensor @'[1,0]
+-- Tensor'4       [ 12, 13, 14, 15]
+subtensor :: forall (index :: [Nat]) (dims :: [Nat]) e.
+    (SubtensorCtx index dims e)
+    => Lens' (Tensor dims e) (Subtensor index dims e)       -- ^
+subtensor = lens (getSubtensor @index @dims @e) (setSubtensor @index @dims @e)
+{-# INLINE subtensor #-}
+
+-- | Constraint for 'subtensor' function.
+type SubtensorCtx index dims e =
+    ( GetSubtensor index dims e
+    , SetSubtensor index dims e)
+
+---------------------------------------------------------------------------------------------------
+-- | Lens for an element of a tensor.
+--
+-- >>> let t = enumFromN @[2,3,4] @Int 0
+-- >>> t
+-- Tensor'2'3'4 [[[  0,  1,  2,  3]
+--               ,[  4,  5,  6,  7]
+--               ,[  8,  9, 10, 11]]
+--              ,[[ 12, 13, 14, 15]
+--               ,[ 16, 17, 18, 19]
+--               ,[ 20, 21, 22, 23]]]
+-- >>> t ^. tensorElem @[1,1,1]
+-- 17
+-- >>> set (tensorElem @[1,1,1]) 0 t
+-- Tensor'2'3'4 [[[  0,  1,  2,  3]
+--               ,[  4,  5,  6,  7]
+--               ,[  8,  9, 10, 11]]
+--              ,[[ 12, 13, 14, 15]
+--               ,[ 16,  0, 18, 19]
+--               ,[ 20, 21, 22, 23]]]
+tensorElem :: forall (index :: [Nat]) (dims :: [Nat]) e.
+    (TensorElem index dims e)
+    => Lens' (Tensor dims e) e      -- ^
+tensorElem = subtensor @index @dims @e . (lens (\(Scalar a) -> a) (\_ b -> Scalar b))
+{-# INLINE tensorElem #-}
+
+-- | Constraint for 'tensorElem' function.
+type TensorElem index dims e =
+    ( SubtensorCtx index dims e
+    , NormalizeDims (SubtensorDims index dims) ~ '[]
+    )
+
+---------------------------------------------------------------------------------------------------
+-- Slices
+---------------------------------------------------------------------------------------------------
+-- | Index of the end of the slice of the tensor. @startIndex@ parameter is the starting index of the slice,
+--   @sliceDims@ is the shape of the slice, @dims@ is the shape of the tensor.
+--   The slice must be contained inside the tensor.
+--   All dimensions of the slice must be positive.
+--   @startIndex@, @sliceDims@ and @dims@ must have the same length. If you want to get slice of lower rank than
+--   the tensor's, set one or more dimensions in @sliceDims@ to @1@.
+--
+-- >>> :kind! SliceEndIndex '[0,0,0] '[2,2,2] '[2,3,4]
+-- SliceEndIndex '[0,0,0] '[2,2,2] '[2,3,4] :: [Nat]
+-- = '[1, 1, 1]
+--
+-- >>> :kind! SliceEndIndex '[1,1,0] '[1,2,4] '[2,3,4]
+-- SliceEndIndex '[1,1,0] '[1,2,4] '[2,3,4] :: [Nat]
+-- = '[1, 2, 3]
+type family SliceEndIndex (startIndex :: [Nat]) (sliceDims :: [Nat]) (dims :: [Nat]) :: [Nat] where
+    SliceEndIndex '[]         '[]         '[]       = '[]
+    SliceEndIndex '[]         '[]         (d ': ds) = TypeError ('Text "SliceEndIndex: Slice and its starting index have not enough dimensions.")
+    SliceEndIndex '[]         (sd ': sds) '[]       = TypeError ('Text "SliceEndIndex: Slice has too many dimensions.")
+    SliceEndIndex '[]         (sd ': sds) (d ': ds) = TypeError ('Text "SliceEndIndex: Starting index of the slice has not enough dimensions.")
+    SliceEndIndex (si ': sis) '[]         '[]       = TypeError ('Text "SliceEndIndex: Starting index of the slice has too many dimensions.")
+    SliceEndIndex (si ': sis) '[]         (d ': ds) = TypeError ('Text "SliceEndIndex: Slice has not enough dimensions.")
+    SliceEndIndex (si ': sis) (sd ': sds) '[]       = TypeError ('Text "SliceEndIndex: Slice and its starting index have too many dimensions.")
+    SliceEndIndex (si ': sis) (sd ': sds) (d ': ds) = SliceEndIndex' (si ': sis) (sd ': sds) (d ': ds) (1 <=? sd)
+
+type family SliceEndIndex' (startIndex :: [Nat]) (sliceDims :: [Nat]) (dims :: [Nat]) (sliceDimPositive :: Bool) :: [Nat] where
+    SliceEndIndex' (si ': sis) (sd ': sds) (d ': ds) 'True  = SliceEndIndex'' (si ': sis) (sd ': sds) (d ': ds) (si + sd <=? d)
+    SliceEndIndex'           _ (sd ':   _)         _ 'False =
+        TypeError ('Text "SliceEndIndex: Slice has non-positive dimension: " ':<>: 'ShowType sd)
+
+type family SliceEndIndex'' (startIndex :: [Nat]) (sliceDims :: [Nat]) (dims :: [Nat]) (sliceDimInside :: Bool) :: [Nat] where
+    SliceEndIndex'' (si ': sis) (sd ': sds) (d ': ds) 'True  = (si + sd - 1 ': SliceEndIndex sis sds ds)
+    SliceEndIndex'' (si ': sis) (sd ': sds) (d ': ds) 'False =
+        (TypeError
+            (      'Text "SliceEndIndex: Slice dimension is outside of the tensor. It starts at "
+             ':<>: 'ShowType si
+             ':<>: 'Text " and ends at "
+             ':<>: 'ShowType (si + sd - 1)
+             ':<>: 'Text " which is outside of the range of the tensor's dimension [0.."
+             ':<>: 'ShowType (d - 1)
+             ':<>: 'Text "]."))
+
+-- | Check each element of the tensor of shape @dims@ if it is inside
+--   the slice from @startIndex@ of shape @sliceDims@.
+--   The slice must be contained inside the tensor.
+--   All dimensions of the slice must be positive.
+--   @startIndex@, @sliceDims@ and @dims@ must have the same length.
+--
+-- >>> :kind! ElemsInSlice '[0,0,0] '[2,2,2] '[2,3,4]
+-- ElemsInSlice '[0,0,0] '[2,2,2] '[2,3,4] :: [Bool]
+-- = '['True, 'True, 'False, 'False, 'True, 'True, 'False, 'False,
+--     'False, 'False, 'False, 'False, 'True, 'True, 'False, 'False,
+--     'True, 'True, 'False, 'False, 'False, 'False, 'False, 'False]
+--
+-- >>> :kind! ElemsInSlice '[1,1,0] '[1,2,4] '[2,3,4]
+-- ElemsInSlice '[1,1,0] '[1,2,4] '[2,3,4] :: [Bool]
+-- = '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+--     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+--     'True, 'True, 'True, 'True, 'True, 'True, 'True, 'True]
+type ElemsInSlice (startIndex :: [Nat]) (sliceDims :: [Nat]) (dims :: [Nat]) =
+    ElemsInSlice' startIndex (SliceEndIndex startIndex sliceDims dims) (AllIndexes dims)
+
+-- | Map over @indexes@.
+type family ElemsInSlice' (startIndex :: [Nat]) (endIndex :: [Nat]) (indexes :: [[Nat]]) :: [Bool] where
+    ElemsInSlice' _          _        '[]       = '[]
+    ElemsInSlice' startIndex endIndex (i ': is) = ElemsInSlice'' i startIndex endIndex ': ElemsInSlice' startIndex endIndex is
+
+-- | Check if index is inside the slice.
+type family ElemsInSlice'' (index :: [Nat]) (startIndex :: [Nat]) (endIndex :: [Nat]) :: Bool where
+    ElemsInSlice'' (i ': is) (s ': ss) (e ': es) = s <=? i && i <=? e && ElemsInSlice'' is ss es
+    ElemsInSlice'' '[]       '[]       '[]       = 'True
+
+---------------------------------------------------------------------------------------------------
+-- | Lens for the slice starting from @startIndex@ of shape @sliceDims@ of the tensor of shape @dims@.
+--
+-- >>> let t = (enumFromN @[2,3,4] @Int 0)
+-- >>> t
+-- Tensor'2'3'4 [[[  0,  1,  2,  3]
+--               ,[  4,  5,  6,  7]
+--               ,[  8,  9, 10, 11]]
+--              ,[[ 12, 13, 14, 15]
+--               ,[ 16, 17, 18, 19]
+--               ,[ 20, 21, 22, 23]]]
+-- >>> t ^. slice @[0,0,0] @[2,2,2]
+-- Tensor'2'2'2 [[[  0,  1]
+--               ,[  4,  5]]
+--              ,[[ 12, 13]
+--               ,[ 16, 17]]]
+-- >>> set (slice @[0,0,0] @[2,2,2]) zero t
+-- Tensor'2'3'4 [[[  0,  0,  2,  3]
+--               ,[  0,  0,  6,  7]
+--               ,[  8,  9, 10, 11]]
+--              ,[[  0,  0, 14, 15]
+--               ,[  0,  0, 18, 19]
+--               ,[ 20, 21, 22, 23]]]
+slice :: forall startIndex sliceDims dims e.
+    (Slice startIndex sliceDims dims e)
+    => Lens' (Tensor dims e) (Tensor (NormalizeDims sliceDims) e)   -- ^ 
+slice = lens (getSlice @startIndex @sliceDims @dims @e) (setSlice @startIndex @sliceDims @dims @e)
+{-# INLINE slice #-}
+
+-- | Constraints for 'slice' function.
+type Slice startIndex sliceDims dims e =
+    ( IsTensor dims e
+    , IsTensor (NormalizeDims sliceDims) e
+    , GetSliceElemsWrk (ElemsInSlice startIndex sliceDims dims)
+    , SetSliceElemsWrk (ElemsInSlice startIndex sliceDims dims)
+    )
+
+---------------------------------------------------------------------------------------------------
+-- | Extract slice of shape @sliceDims@ from a tensor of shape @dims@
+--   starting at @startIndex@ for each axis.
+getSlice :: forall startIndex sliceDims dims e.
+    (GetSlice startIndex sliceDims dims e)
+    => Tensor dims e                        -- ^ 
+    -> Tensor (NormalizeDims sliceDims) e
+getSlice = unsafeFromList . getSliceElems @startIndex @sliceDims @dims @e
+{-# INLINE getSlice #-}
+
+-- | Constraints for 'getSlice'.
+type GetSlice startIndex sliceDims dims e =
+    ( IsTensor dims e
+    , IsTensor (NormalizeDims sliceDims) e
+    , GetSliceElemsWrk (ElemsInSlice startIndex sliceDims dims)
+    )
+
+---------------------------------------------------------------------------------------------------
+-- | Same as slice but returns list of elements instead of tensor data type.
+getSliceElems :: forall startIndex sliceDims dims e.
+    (GetSliceElems startIndex sliceDims dims e)
+    => Tensor dims e            -- ^ 
+    -> [e]
+getSliceElems = getSliceElemsWrk @(ElemsInSlice startIndex sliceDims dims) . toList
+{-# INLINE getSliceElems #-}
+
+-- | Constraints for 'getSliceElems'.
+type GetSliceElems startIndex sliceDims dims e =
+    ( IsTensor dims e
+    , GetSliceElemsWrk (ElemsInSlice startIndex sliceDims dims)
+    )
+
+-- | Fail when list representation of a tensor has less elements than tensor. This should never happen.
+impossible_notEnoughTensorElems :: a
+impossible_notEnoughTensorElems =
+    error "Impossible happend! Not enough elements in the tensor. Please report this bug."
+{-# INLINE impossible_notEnoughTensorElems #-}
+
+-- | Worker function for 'sliceElems'.
+class GetSliceElemsWrk (elemsInSlice :: [Bool]) where
+    getSliceElemsWrk :: [e] -> [e]
+
+instance GetSliceElemsWrk '[] where
+    getSliceElemsWrk _ = []
+    {-# INLINE getSliceElemsWrk #-}
+
+instance (GetSliceElemsWrk xs) => GetSliceElemsWrk ('True ': xs) where
+    getSliceElemsWrk []       = impossible_notEnoughTensorElems
+    getSliceElemsWrk (x : xs) = x : getSliceElemsWrk @xs xs
+    {-# INLINE getSliceElemsWrk #-}
+
+instance (GetSliceElemsWrk xs) => GetSliceElemsWrk ('False ': xs) where
+    getSliceElemsWrk []       = impossible_notEnoughTensorElems
+    getSliceElemsWrk (_ : xs) = getSliceElemsWrk @xs xs
+    {-# INLINE getSliceElemsWrk #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Set elements of the slice.
+setSlice :: forall startIndex sliceDims dims e.
+    (SetSlice startIndex sliceDims dims e)
+    => Tensor dims e                            -- ^ The tensor.
+    -> Tensor (NormalizeDims sliceDims) e       -- ^ New slice.
+    -> Tensor dims e
+setSlice t st =
+    case setSliceElems @startIndex @sliceDims @dims @e t $ toList st of
+        Nothing -> impossible_notEnoughTensorElems
+        Just  x -> x
+{-# INLINE setSlice #-}
+
+-- | Constraints for 'setSlice'.
+type SetSlice startIndex sliceDims dims e =
+    ( IsTensor dims e
+    , IsTensor (NormalizeDims sliceDims) e
+    , SetSliceElemsWrk (ElemsInSlice startIndex sliceDims dims)
+    )
+
+---------------------------------------------------------------------------------------------------
+-- | Like 'setSlice' but takes a list of elements instead of a tensor.
+--   Returns @Nothing@ if list has less than @'ElemsNumber' sliceDims@ elements.
+setSliceElems :: forall startIndex sliceDims dims e.
+    (SetSliceElems startIndex sliceDims dims e)
+    => Tensor dims e                -- ^ The tensor.
+    -> [e]                          -- ^ New elements of the slice.
+    -> Maybe (Tensor dims e)
+setSliceElems t xs = unsafeFromList <$> setSliceElemsWrk @(ElemsInSlice startIndex sliceDims dims) (toList t) xs
+{-# INLINE setSliceElems #-}
+
+-- | Constraints for 'setSliceElems'.
+type SetSliceElems startIndex sliceDims dims e =
+    ( IsTensor dims e
+    , SetSliceElemsWrk (ElemsInSlice startIndex sliceDims dims)
+    )
+
+-- | Worker function for 'setSliceElems'
+class SetSliceElemsWrk (elemsInSlice :: [Bool]) where
+    setSliceElemsWrk :: [e] -> [e] -> Maybe [e]
+
+instance SetSliceElemsWrk '[] where
+    setSliceElemsWrk _ _ = Just []
+    {-# INLINE setSliceElemsWrk #-}
+
+instance (SetSliceElemsWrk xs) => SetSliceElemsWrk ('True ': xs) where
+    setSliceElemsWrk []       _        = impossible_notEnoughTensorElems
+    setSliceElemsWrk _        []       = Nothing
+    setSliceElemsWrk (_ : xs) (y : ys) = (y :) <$> setSliceElemsWrk @xs xs ys
+    {-# INLINE setSliceElemsWrk #-}
+
+instance (SetSliceElemsWrk xs) => SetSliceElemsWrk ('False ': xs) where
+    setSliceElemsWrk []       _        = impossible_notEnoughTensorElems
+    setSliceElemsWrk (x : xs) yss      = (x :) <$> setSliceElemsWrk @xs xs yss
+    {-# INLINE setSliceElemsWrk #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Modify slice elements with a function.
+mapSliceElems :: forall startIndex sliceDims dims e.
+    (MapSliceElems startIndex sliceDims dims e)
+    => Tensor dims e        -- ^ The tensor.
+    -> (e -> e)             -- ^ The mapping function.
+    -> Tensor dims e
+mapSliceElems t f =
+    case setSliceElems @startIndex @sliceDims @dims @e
+            t (U.map @(ElemsNumber sliceDims) f (getSliceElems @startIndex @sliceDims @dims @e t))
+    of
+        Nothing -> impossible_notEnoughTensorElems
+        Just  x -> x
+{-# INLINE mapSliceElems #-}
+
+-- | Constraints for 'mapSliceElems'.
+type MapSliceElems startIndex sliceDims dims e =
+    ( IsTensor dims e
+    , GetSliceElemsWrk (ElemsInSlice startIndex sliceDims dims)
+    , SetSliceElemsWrk (ElemsInSlice startIndex sliceDims dims)
+    , U.Map (ElemsNumber sliceDims)
+    )
+
+---------------------------------------------------------------------------------------------------
+-- | Remove a slice from the tensor. We can only remove slices which have one dimension fewer than the tensor,
+--   and which span from borders of the tensor to opposite borders of the tensor (i.e. contain all elements of
+--   the tensor in their dimensions).
+--
+--   @axis@ is the index of dimension in @dims@
+--   @indexOnAxis@ is offset along @axis@ that points to the slice to be removed.
+--
+--   For example, suppose we have tensor @t :: Tensor '[2,3,4] Float@ that is, tensor made of two matrices of 3*4 elements.
+--
+--   If we want to remove first matrix we write @remove \@0 \@0 t@, if second - @remove \@0 \@1 t@.
+--
+--   If we want to remove n-th row in all matrices we write @remove \@1 \@n t@.
+--
+--   If we want to remove n-th column in all matrices we write @remove \@2 \@n t@.
+--
+-- >>> let t = enumFromN @[2,3,4] @Int 0
+-- >>> t
+-- Tensor'2'3'4 [[[ 0, 1, 2, 3]
+--               ,[ 4, 5, 6, 7]
+--               ,[ 8, 9,10,11]]
+--              ,[[12,13,14,15]
+--               ,[16,17,18,19]
+--               ,[20,21,22,23]]]
+-- >>> remove @0 @0 t
+-- Tensor'1'3'4 [[[12,13,14,15]
+--               ,[16,17,18,19]
+--               ,[20,21,22,23]]]
+-- >>> remove @1 @0 t
+-- Tensor'2'2'4 [[[ 4, 5, 6, 7]
+--               ,[ 8, 9,10,11]]
+--              ,[[16,17,18,19]
+--               ,[20,21,22,23]]]
+-- >>> remove @2 @0 t
+-- Tensor'2'3'3 [[[ 1, 2, 3]
+--               ,[ 5, 6, 7]
+--               ,[ 9,10,11]]
+--              ,[[13,14,15]
+--               ,[17,18,19]
+--               ,[21,22,23]]]
+remove :: forall (axis :: Nat) (indexOnAxis :: Nat) (dims :: [Nat]) e.
+    (Remove axis indexOnAxis dims e)
+    => Tensor dims e                                    -- ^
+    -> Tensor (DimsAfterRemove axis indexOnAxis dims) e
+remove = unsafeFromList . removeWrk @(ElemsInSlice (RemoveSliceStartIndex axis indexOnAxis dims) (RemoveSliceDims axis indexOnAxis dims) dims) . toList
+{-# INLINE remove #-}
+
+-- | Constraints for 'remove'.
+type Remove (axis :: Nat) (indexOnAxis :: Nat) (dims :: [Nat]) e =
+    ( IsTensor dims e
+    , IsTensor (DimsAfterRemove axis indexOnAxis dims) e
+    , RemoveWrk (ElemsInSlice (RemoveSliceStartIndex axis indexOnAxis dims) (RemoveSliceDims axis indexOnAxis dims) dims)
+    )
+
+-- | Shape of a tensor @dims@ after removing a slice at @index@ along @axis@.
+--
+-- >>> :kind! DimsAfterRemove 0 0 [2,3,4]
+-- DimsAfterRemove 0 0 [2,3,4] :: [Nat]
+-- = '[1, 3, 4]
+-- 
+-- >>> :kind! DimsAfterRemove 1 0 [2,3,4]
+-- DimsAfterRemove 1 0 [2,3,4] :: [Nat]
+-- = '[2, 2, 4]
+-- 
+-- >>> :kind! DimsAfterRemove 2 0 [2,3,4]
+-- DimsAfterRemove 2 0 [2,3,4] :: [Nat]
+-- = '[2, 3, 3]
+type family DimsAfterRemove (axis :: Nat) (index :: Nat) (dims :: [Nat]) :: [Nat] where
+    DimsAfterRemove _ _ '[]       = TypeError ('Text "DimsAfterRemove: axis must be in range [0..(number of dimensions in the tensor)].")
+    DimsAfterRemove 0 i (d ': ds) =
+        If  (i <=? d - 1)
+            (d - 1 ': ds)
+            (TypeError (
+                'Text "DimsAfterRemove: Index "
+                ':<>: 'ShowType i
+                ':<>: 'Text " is outside of the range of dimension [0.."
+                ':<>: 'ShowType (d - 1)
+                ':<>: 'Text "]."))
+    DimsAfterRemove a i (d ': ds) = d ': DimsAfterRemove (a - 1) i ds
+
+-- | Starting index of the slice to be removed.
+--   @axis@ is the index of dimension in @dims@
+--   @indexOnAxis@ is offset of the slice along @axis@.
+type RemoveSliceStartIndex (axis :: Nat) (indexOnAxis :: Nat) (dims :: [Nat]) = RemoveSliceStartIndex' axis indexOnAxis dims 0
+
+type family RemoveSliceStartIndex' (axis :: Nat) (indexOnAxis :: Nat) (dims :: [Nat]) (n :: Nat) :: [Nat] where
+    RemoveSliceStartIndex' _ _ '[]       _ = '[]
+    RemoveSliceStartIndex' a i (d ': ds) n =
+        If (a == n) i 0 ': RemoveSliceStartIndex' a i ds (n + 1)
+
+-- | Shape of the slice to be removed.
+--   @axis@ is the index of dimension in @dims@
+--   @indexOnAxis@ is offset of the slice along @axis@.
+type family RemoveSliceDims (axis :: Nat) (indexOnAxis :: Nat) (dims :: [Nat]) :: [Nat] where
+    RemoveSliceDims _ _ '[]       = TypeError ('Text "RemoveSliceDims: axis must be in range [0..(number of dimensions in the tensor)].")
+    RemoveSliceDims 0 i (d ': ds) =
+        If  (i <=? d - 1)
+            (1 ': ds)
+            (TypeError (
+                'Text "RemoveSliceDims: Index "
+                ':<>: 'ShowType i
+                ':<>: 'Text " is outside of the range of dimension [0.."
+                ':<>: 'ShowType (d - 1)
+                ':<>: 'Text "]."))
+    RemoveSliceDims a i (d ': ds) = d ': RemoveSliceDims (a - 1) i ds
+
+-- | Worker function for 'remove'.
+class RemoveWrk (elemsInSlice :: [Bool]) where
+    removeWrk :: [e] -> [e]
+
+instance RemoveWrk '[] where
+    removeWrk _ = []
+    {-# INLINE removeWrk #-}
+
+instance (RemoveWrk xs) => RemoveWrk ('False ': xs) where
+    removeWrk []       = impossible_notEnoughTensorElems
+    removeWrk (x : xs) = x : removeWrk @xs xs
+    {-# INLINE removeWrk #-}
+
+instance (RemoveWrk xs) => RemoveWrk ('True ': xs) where
+    removeWrk []       = impossible_notEnoughTensorElems
+    removeWrk (_ : xs) = removeWrk @xs xs
+    {-# INLINE removeWrk #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Prepend a subtensor along @axis@ to the tensor with shape @dims@
+--
+-- >>> cons @0 (enumFromStepN @[3,4] @Int (-1) (-1)) (enumFromN @[2,3,4] 0)
+-- Tensor'3'3'4 [[[ -1,  -2,  -3,  -4]
+--               ,[ -5,  -6,  -7,  -8]
+--               ,[ -9, -10, -11, -12]]
+--              ,[[  0,   1,   2,   3]
+--               ,[  4,   5,   6,   7]
+--               ,[  8,   9,  10,  11]]
+--              ,[[ 12,  13,  14,  15]
+--               ,[ 16,  17,  18,  19]
+--               ,[ 20,  21,  22,  23]]]
+--
+-- >>> cons @1 (enumFromStepN @[2,4] @Int (-1) (-1)) (enumFromN @[2,3,4] 0)
+-- Tensor'2'4'4 [[[ -1,  -2,  -3,  -4]
+--               ,[  0,   1,   2,   3]
+--               ,[  4,   5,   6,   7]
+--               ,[  8,   9,  10,  11]]
+--              ,[[ -5,  -6,  -7,  -8]
+--               ,[ 12,  13,  14,  15]
+--               ,[ 16,  17,  18,  19]
+--               ,[ 20,  21,  22,  23]]]
+--
+-- >>> cons @2 (enumFromStepN @[2,3] @Int (-1) (-1)) (enumFromN @[2,3,4] 0)
+-- Tensor'2'3'5 [[[ -1,   0,   1,   2,   3]
+--               ,[ -2,   4,   5,   6,   7]
+--               ,[ -3,   8,   9,  10,  11]]
+--              ,[[ -4,  12,  13,  14,  15]
+--               ,[ -5,  16,  17,  18,  19]
+--               ,[ -6,  20,  21,  22,  23]]]
+cons :: forall (axis :: Nat) (dims :: [Nat]) e.
+        (Cons axis dims e) =>
+           Tensor (NormalizeDims (ConsSubtensorDims axis dims)) e    -- ^ Subtensor to cons.
+        -> Tensor dims e                                             -- ^ Tensor to cons to.
+        -> Tensor (DimsAfterCons axis dims) e
+cons st t =
+        setSlice @(ConsSubtensorStartingIndex dims) @(ConsSubtensorDims axis dims) @(DimsAfterCons axis dims) @e t' st
+    where
+        t' = setSlice @(ConsTensorStartingIndex axis dims) @dims @(DimsAfterCons axis dims) z t
+        z = fill @(DimsAfterCons axis dims) @e (head $ toList t)
+{-# INLINE cons #-}
+
+-- | Constraints for 'cons'.
+type Cons (axis :: Nat) (dims :: [Nat]) e =
+    ( SetSlice (ConsSubtensorStartingIndex dims) (ConsSubtensorDims axis dims) (DimsAfterCons axis dims) e
+    , SetSlice (ConsTensorStartingIndex axis dims) dims (DimsAfterCons axis dims) e
+    , dims ~ NormalizeDims dims
+    , Fill (DimsAfterCons axis dims) e
+    )
+
+type family ConsSubtensorStartingIndex (dims :: [Nat]) :: [Nat] where
+    ConsSubtensorStartingIndex '[]       = '[]
+    ConsSubtensorStartingIndex (_ ': ds) = 0 ': ConsSubtensorStartingIndex ds
+
+type ConsTensorStartingIndex (axis :: Nat) (dims :: [Nat]) = ConsTensorStartingIndex' axis dims 0
+
+type family ConsTensorStartingIndex' (axis :: Nat) (dims :: [Nat]) (i :: Nat) :: [Nat] where
+    ConsTensorStartingIndex' _ '[]       _ = '[]
+    ConsTensorStartingIndex' a (d ': ds) i =
+        If (a == i) 1 0 ': ConsTensorStartingIndex' a ds (i + 1)
+
+-- | Shape of subtensor being cons'ed to the tensor @dims@.
+--
+-- >>> :kind! ConsSubtensorDims 0 [2,3,4]  
+-- ConsSubtensorDims 0 [2,3,4] :: [Nat] 
+-- = '[1, 3, 4]                
+-- 
+-- >>> :kind! ConsSubtensorDims 1 [2,3,4]  
+-- ConsSubtensorDims 1 [2,3,4] :: [Nat] 
+-- = '[2, 1, 4]                
+-- 
+-- >>> :kind! ConsSubtensorDims 2 [2,3,4]  
+-- ConsSubtensorDims 2 [2,3,4] :: [Nat] 
+-- = '[2, 3, 1]                
+type ConsSubtensorDims (axis :: Nat) (dims :: [Nat]) = ConsSubtensorDims' axis dims 0
+
+type family ConsSubtensorDims' (axis :: Nat) (dims :: [Nat]) (i :: Nat) :: [Nat] where
+    ConsSubtensorDims' _ '[]       _ = '[]
+    ConsSubtensorDims' a (d ': ds) i =
+        If (a == i) 1 d ': ConsSubtensorDims' a ds (i + 1)
+
+-- | Shape of the tensor after cons'ing
+--
+-- >>> :kind! DimsAfterCons 0 [2,3,4]
+-- DimsAfterCons 0 [2,3,4] :: [Nat]
+-- = '[3, 3, 4]
+--
+-- >>> :kind! DimsAfterCons 1 [2,3,4]
+-- DimsAfterCons 1 [2,3,4] :: [Nat]
+-- = '[2, 4, 4]
+--
+-- >>> :kind! DimsAfterCons 2 [2,3,4]
+-- DimsAfterCons 2 [2,3,4] :: [Nat]
+-- = '[2, 3, 5]
+type family DimsAfterCons (axis :: Nat) (dims :: [Nat]) :: [Nat] where
+    DimsAfterCons 0 (d ': ds) = d + 1 ': ds
+    DimsAfterCons a (d ': ds) = d ': DimsAfterCons (a - 1) ds
+    DimsAfterCons _ '[]       = TypeError ('Text "DimsAfterCons: axis must be in range [0..(number of dimensions in the tensor)].")
+
+---------------------------------------------------------------------------------------------------
+-- | Append a subtensor along @axis@ to the tensor with shape @dims@
+--
+-- >>> snoc @0 (enumFromN @[2,3,4] 0) (enumFromStepN @[3,4] @Int (-1) (-1))
+-- Tensor'3'3'4 [[[  0,   1,   2,   3]
+--               ,[  4,   5,   6,   7]
+--               ,[  8,   9,  10,  11]]
+--              ,[[ 12,  13,  14,  15]
+--               ,[ 16,  17,  18,  19]
+--               ,[ 20,  21,  22,  23]]
+--              ,[[ -1,  -2,  -3,  -4]
+--               ,[ -5,  -6,  -7,  -8]
+--               ,[ -9, -10, -11, -12]]]
+--
+-- >>> snoc @1 (enumFromN @[2,3,4] 0) (enumFromStepN @[2,4] @Int (-1) (-1))
+-- Tensor'2'4'4 [[[  0,   1,   2,   3]
+--               ,[  4,   5,   6,   7]
+--               ,[  8,   9,  10,  11]
+--               ,[ -1,  -2,  -3,  -4]]
+--              ,[[ 12,  13,  14,  15]
+--               ,[ 16,  17,  18,  19]
+--               ,[ 20,  21,  22,  23]
+--               ,[ -5,  -6,  -7,  -8]]]
+--
+-- >>> snoc @2 (enumFromN @[2,3,4] 0) (enumFromStepN @[2,3] @Int (-1) (-1))
+-- Tensor'2'3'5 [[[  0,   1,   2,   3,  -1]
+--               ,[  4,   5,   6,   7,  -2]
+--               ,[  8,   9,  10,  11,  -3]]
+--              ,[[ 12,  13,  14,  15,  -4]
+--               ,[ 16,  17,  18,  19,  -5]
+--               ,[ 20,  21,  22,  23,  -6]]]
+snoc :: forall (axis :: Nat) (dims :: [Nat]) e.
+        (Snoc axis dims e) =>
+           Tensor dims e                                             -- ^ Tensor to snoc to.
+        -> Tensor (NormalizeDims (SnocSubtensorDims axis dims)) e    -- ^ Subtensor to snoc.
+        -> Tensor (DimsAfterSnoc axis dims) e
+snoc t st =
+        setSlice @(SnocSubtensorStartingIndex axis dims) @(SnocSubtensorDims axis dims) @(DimsAfterSnoc axis dims) @e t' st
+    where
+        t' = setSlice @(SnocTensorStartingIndex dims) @dims @(DimsAfterSnoc axis dims) z t
+        z = fill @(DimsAfterSnoc axis dims) @e (head $ toList t)
+{-# INLINE snoc #-}
+
+-- | Constraints for 'snoc'.
+type Snoc (axis :: Nat) (dims :: [Nat]) e =
+    ( SetSlice (SnocSubtensorStartingIndex axis dims) (SnocSubtensorDims axis dims) (DimsAfterSnoc axis dims) e
+    , SetSlice (SnocTensorStartingIndex dims) dims (DimsAfterSnoc axis dims) e
+    , dims ~ NormalizeDims dims
+    , Fill (DimsAfterSnoc axis dims) e
+    )
+
+type family SnocTensorStartingIndex (dims :: [Nat]) :: [Nat] where
+    SnocTensorStartingIndex '[]       = '[]
+    SnocTensorStartingIndex (_ ': ds) = 0 ': SnocTensorStartingIndex ds
+
+type SnocSubtensorStartingIndex (axis :: Nat) (dims :: [Nat]) = SnocSubtensorStartingIndex' axis dims 0
+
+type family SnocSubtensorStartingIndex' (axis :: Nat) (dims :: [Nat]) (i :: Nat) :: [Nat] where
+    SnocSubtensorStartingIndex' _ '[]       _ = '[]
+    SnocSubtensorStartingIndex' a (d ': ds) i =
+        If (a == i) d 0 ': SnocSubtensorStartingIndex' a ds (i + 1)
+
+-- | Shape of subtensor being snoc'ed to the tensor @dims@.
+--
+-- >>> :kind! SnocSubtensorDims 0 [2,3,4]  
+-- SnocSubtensorDims 0 [2,3,4] :: [Nat] 
+-- = '[1, 3, 4]
+-- 
+-- >>> :kind! SnocSubtensorDims 1 [2,3,4]  
+-- SnocSubtensorDims 1 [2,3,4] :: [Nat] 
+-- = '[2, 1, 4]
+-- 
+-- >>> :kind! SnocSubtensorDims 2 [2,3,4]  
+-- SnocSubtensorDims 2 [2,3,4] :: [Nat] 
+-- = '[2, 3, 1]
+type SnocSubtensorDims (axis :: Nat) (dims :: [Nat]) = SnocSubtensorDims' axis dims 0
+
+type family SnocSubtensorDims' (axis :: Nat) (dims :: [Nat]) (i :: Nat) :: [Nat] where
+    SnocSubtensorDims' _ '[]       _ = '[]
+    SnocSubtensorDims' a (d ': ds) i =
+        If (a == i) 1 d ': SnocSubtensorDims' a ds (i + 1)
+
+-- | Shape of the tensor after snoc'ing
+--
+-- >>> :kind! DimsAfterSnoc 0 [2,3,4]
+-- DimsAfterSnoc 0 [2,3,4] :: [Nat]
+-- = '[3, 3, 4]
+--
+-- >>> :kind! DimsAfterSnoc 1 [2,3,4]
+-- DimsAfterSnoc 1 [2,3,4] :: [Nat]
+-- = '[2, 4, 4]
+--
+-- >>> :kind! DimsAfterSnoc 2 [2,3,4]
+-- DimsAfterSnoc 2 [2,3,4] :: [Nat]
+-- = '[2, 3, 5]
+type family DimsAfterSnoc (axis :: Nat) (dims :: [Nat]) :: [Nat] where
+    DimsAfterSnoc 0 (d ': ds) = d + 1 ': ds
+    DimsAfterSnoc a (d ': ds) = d ': DimsAfterSnoc (a - 1) ds
+    DimsAfterSnoc _ '[]       = TypeError ('Text "DimsAfterSnoc: axis must be in range [0..(number of dimensions in the tensor)].")
+
+---------------------------------------------------------------------------------------------------
+-- | Append the second tensor @dims1@ to the first tensor @dims0@ along @axis@.
+--
+-- >>> append @0 (enumFromN @[2,3,4] 0) (enumFromStepN @[2,3,4] @Int (-1) (-1))
+-- Tensor'4'3'4 [[[   0,   1,   2,   3]
+--               ,[   4,   5,   6,   7]
+--               ,[   8,   9,  10,  11]]
+--              ,[[  12,  13,  14,  15]
+--               ,[  16,  17,  18,  19]
+--               ,[  20,  21,  22,  23]]
+--              ,[[  -1,  -2,  -3,  -4]
+--               ,[  -5,  -6,  -7,  -8]
+--               ,[  -9, -10, -11, -12]]
+--              ,[[ -13, -14, -15, -16]
+--               ,[ -17, -18, -19, -20]
+--               ,[ -21, -22, -23, -24]]]
+--
+-- >>> append @1 (enumFromN @[2,3,4] 0) (enumFromStepN @[2,3,4] @Int (-1) (-1))
+-- Tensor'2'6'4 [[[   0,   1,   2,   3]
+--               ,[   4,   5,   6,   7]
+--               ,[   8,   9,  10,  11]
+--               ,[  -1,  -2,  -3,  -4]
+--               ,[  -5,  -6,  -7,  -8]
+--               ,[  -9, -10, -11, -12]]
+--              ,[[  12,  13,  14,  15]
+--               ,[  16,  17,  18,  19]
+--               ,[  20,  21,  22,  23]
+--               ,[ -13, -14, -15, -16]
+--               ,[ -17, -18, -19, -20]
+--               ,[ -21, -22, -23, -24]]]
+-- >>> append @2 (enumFromN @[2,3,4] 0) (enumFromStepN @[2,3,4] @Int (-1) (-1))
+-- Tensor'2'3'8 [[[   0,   1,   2,   3,  -1,  -2,  -3,  -4]
+--               ,[   4,   5,   6,   7,  -5,  -6,  -7,  -8]
+--               ,[   8,   9,  10,  11,  -9, -10, -11, -12]]
+--              ,[[  12,  13,  14,  15, -13, -14, -15, -16]
+--               ,[  16,  17,  18,  19, -17, -18, -19, -20]
+--               ,[  20,  21,  22,  23, -21, -22, -23, -24]]]
+append :: forall (axis :: Nat) (dims0 :: [Nat]) (dims1 :: [Nat]) e.
+    (Append axis dims0 dims1 e)
+    => Tensor dims0 e       -- ^ 
+    -> Tensor dims1 e       -- ^ 
+    -> Tensor (DimsAfterAppend axis dims0 dims1) e
+append t0 t1 =
+        setSlice @(AppendSndTensorStartingIndex axis dims1) @dims1 @(DimsAfterAppend axis dims0 dims1) @e t0' t1
+    where
+        t0' = setSlice @(AppendFstTensorStartingIndex dims0) @dims0 @(DimsAfterAppend axis dims0 dims1) z t0
+        z = fill @(DimsAfterAppend axis dims0 dims1) @e (head $ toList t0)
+{-# INLINE append #-}
+
+-- | Constraints for 'append'.
+type Append (axis :: Nat) (dims0 :: [Nat]) (dims1 :: [Nat]) e =
+    ( SetSlice (AppendFstTensorStartingIndex dims0) dims0 (DimsAfterAppend axis dims0 dims1) e
+    , SetSlice (AppendSndTensorStartingIndex axis dims1) dims1 (DimsAfterAppend axis dims0 dims1) e
+    , dims0 ~ NormalizeDims dims0
+    , dims1 ~ NormalizeDims dims1
+    , Fill (DimsAfterAppend axis dims0 dims1) e
+    )
+
+type family AppendFstTensorStartingIndex (dims :: [Nat]) :: [Nat] where
+    AppendFstTensorStartingIndex '[]       = '[]
+    AppendFstTensorStartingIndex (_ ': ds) = 0 ': SnocTensorStartingIndex ds
+
+type AppendSndTensorStartingIndex (axis :: Nat) (dims :: [Nat]) = AppendSndTensorStartingIndex' axis dims 0
+
+type family AppendSndTensorStartingIndex' (axis :: Nat) (dims :: [Nat]) (i :: Nat) :: [Nat] where
+    AppendSndTensorStartingIndex' _ '[]       _ = '[]
+    AppendSndTensorStartingIndex' a (d ': ds) i =
+        If (a == i) d 0 ': AppendSndTensorStartingIndex' a ds (i + 1)
+
+-- | Shape of the tensor after appending
+--
+-- >>> :kind! DimsAfterAppend 0 [2,3,4] [5,3,4]
+-- DimsAfterAppend 0 [2,3,4] [5,3,4] :: [Nat]
+-- = '[7, 3, 4]
+--
+-- >>> :kind! DimsAfterAppend 1 [2,3,4] [2,5,4]
+-- DimsAfterAppend 1 [2,3,4] [2,5,4] :: [Nat]
+-- = '[2, 8, 4]
+--
+-- >>> :kind! DimsAfterAppend 2 [2,3,4] [2,3,5]
+-- DimsAfterAppend 2 [2,3,4] [2,3,5] :: [Nat]
+-- = '[2, 3, 9]
+type DimsAfterAppend (axis :: Nat) (dims0 :: [Nat]) (dims1 :: [Nat]) = DimsAfterAppend' axis dims0 dims1 0
+
+type family DimsAfterAppend' (axis :: Nat) (dims0 :: [Nat]) (dims1 :: [Nat]) (i :: Nat) :: [Nat] where
+    DimsAfterAppend' _ '[]         (d1 ': d1s) _ = TypeError ('Text "DimsAfterAppend: Tensors must have the same number of dimensions.")
+    DimsAfterAppend' _ (d0 ': d0s) '[]         _ = TypeError ('Text "DimsAfterAppend: Tensors must have the same number of dimensions.")
+    DimsAfterAppend' a '[]         '[]         a = TypeError ('Text "DimsAfterAppend: axis must be in range [0..(number of dimensions in the tensor)].")
+    DimsAfterAppend' a '[]         '[]         i = '[]
+    DimsAfterAppend' a (d0 ': d0s) (d1 ': d1s) a = d0 + d1 ': DimsAfterAppend' a d0s d1s (a + 1)
+    DimsAfterAppend' a (d  ': d0s) (d  ': d1s) i = d ': DimsAfterAppend' a d0s d1s (i + 1)
+    DimsAfterAppend' a (d0 ': d0s) (d1 ': d1s) i = TypeError ('Text "DimsAfterAppend: Tensors have incompatible dimensions.")
+
+---------------------------------------------------------------------------------------------------
+-- Traversals
+---------------------------------------------------------------------------------------------------
+instance (IsTensor dims a, IsTensor dims b) => Each (Tensor dims a) (Tensor dims b) a b where
+    {-# INLINE each #-}
+    each f t = unsafeFromList <$> traversed f (toList t)
+
+---------------------------------------------------------------------------------------------------
+-- Mono{Foldable, Traversable, Zip}
+---------------------------------------------------------------------------------------------------
+type instance Element (Tensor dims e) = e
+
+instance (MonoFunctorCtx dims e) => MonoFunctor (Tensor dims e) where
+    {-# INLINE omap #-}
+    omap f = unsafeFromList . U.map @(ElemsNumber dims) f . toList
+
+-- | Constraints for 'MonoFunctor' instance for @'Tensor' dims e@.
+type MonoFunctorCtx (dims :: [Nat]) e =
+    ( IsTensor dims e
+    , U.Map (ElemsNumber dims)
+    )
+
+instance (MonoFoldableCtx dims e) => MonoFoldable (Tensor dims e) where
+    {-# INLINE ofoldr #-}
+    {-# INLINE ofoldMap #-}
+    {-# INLINE ofoldl' #-}
+    {-# INLINE ofoldr1Ex #-}
+    {-# INLINE ofoldl1Ex' #-}
+
+    ofoldr f z = U.foldr @(ElemsNumber dims) f z . toList
+
+    ofoldMap f = U.foldMap @(ElemsNumber dims) f . toList
+
+    ofoldl' f z = U.foldl @(ElemsNumber dims) f z . toList
+
+    ofoldr1Ex f =  U.foldr1 @(ElemsNumber dims) f . toList
+
+    ofoldl1Ex' f = U.foldl1 @(ElemsNumber dims) f . toList
+
+-- | Constraints for 'MonoFoldable' instance for @'Tensor' dims e@.
+type MonoFoldableCtx (dims :: [Nat]) e =
+    ( IsTensor dims e
+    , U.Foldr (ElemsNumber dims)
+    , U.Foldl (ElemsNumber dims)
+    , U.Foldr1 (ElemsNumber dims)
+    , U.Foldl1 (ElemsNumber dims)
+    )
+
+instance (MonoTraversableCtx dims e) => MonoTraversable (Tensor dims e) where
+    {-# INLINE otraverse #-}
+    otraverse f t = unsafeFromList <$> traverse f (toList t)
+
+-- | Constraints for 'MonoTraversable' instance for @'Tensor' dims e@.
+type MonoTraversableCtx (dims :: [Nat]) e =
+    ( IsTensor dims e
+    , U.Map (ElemsNumber dims)
+    , U.Foldr (ElemsNumber dims)
+    , U.Foldl (ElemsNumber dims)
+    , U.Foldr1 (ElemsNumber dims)
+    , U.Foldl1 (ElemsNumber dims)
+    )
+
+instance (MonoZipCtx dims e) => MonoZip (Tensor dims e) where
+    {-# INLINE ozipWith #-}
+    {-# INLINE ozip #-}
+    {-# INLINE ounzip #-}
+    
+    ozipWith f = \t1 t2 -> unsafeFromList $ U.zipWith @(ElemsNumber dims) f (toList t1) (toList t2)
+
+    ozip t1 t2 = U.zip @(ElemsNumber dims) (toList t1) (toList t2)
+
+    ounzip ps = (unsafeFromList es1, unsafeFromList es2)
+        where (es1, es2) = U.unzip @(ElemsNumber dims) ps
+
+-- | Constraints for 'MonoZip' instance for @'Tensor' dims e@.
+--
+-- __Note:__ at the moment(GHC-8.2.1) the compiler generates suboptimal core for 'ounzip' method.
+-- Expect it to be slower than most of the functions in the package.
+type MonoZipCtx (dims :: [Nat]) e =
+    ( IsTensor dims e
+    , U.Map (ElemsNumber dims)
+    , U.ZipWith (ElemsNumber dims)
+    , U.Zip (ElemsNumber dims)
+    , U.Unzip (ElemsNumber dims)
+    )
+
+---------------------------------------------------------------------------------------------------
+-- Storable
+---------------------------------------------------------------------------------------------------
+instance (IsTensor dims e, Storable e, KnownNat (ElemsNumber dims)) => Storable (Tensor dims e) where
+    {-# INLINE alignment #-}
+    {-# INLINE sizeOf #-}
+    {-# INLINE peek #-}
+    {-# INLINE poke #-}
+
+    alignment _ = alignment (undefined :: e)
+    sizeOf    _ = elemsNumber @dims * offsetDiff (undefined :: e) (undefined :: e)
+    
+    peek p = unsafeFromList <$> mapM (\x -> peekByteOff p (x * size)) [0 .. count - 1]
+        where
+            size  = offsetDiff (undefined :: e) (undefined :: e)
+            count = elemsNumber @dims
+
+    poke p m = mapM_ (\(i, x) -> pokeByteOff p (size * i) x) $ zip [0 .. count - 1] $ toList m
+        where
+            size  = offsetDiff (undefined :: e) (undefined :: e)
+            count = elemsNumber @dims
+
+-- | Pass a pointer to the tensor's data to the IO action. The data may not be modified through the 'Ptr.
+-- Pointer may not be used after action is complete.
+unsafeWithTensorPtr :: (IsTensor dims e, Storable e, KnownNat (ElemsNumber dims)) => Tensor dims e -> (Ptr e -> IO a) -> IO a
+unsafeWithTensorPtr t f = with t (f . castPtr)
+{-# INLINE unsafeWithTensorPtr #-}
+
+-- | Calculate number of padding bytes to be inserted between @a@ and @b@ based on size of @a@ and alignment of @b@
+-- 
+-- > Given:
+-- > sizeOf    a = 4
+-- > alignment b = 8
+-- >
+-- > 0 1 2 3 4 5 6 7 8 9 A B C D E F
+-- > a a a a . . . . b b b b b b b b 
+-- >         |<--->|
+-- >            4 padding bytes
+padding :: (Storable a, Storable b) => a -> b -> Int
+padding a b = (alignB - sizeOf a) `mod` alignB
+    where alignB = alignment b
+{-# INLINE padding #-}
+
+-- | Calculate offset difference between first byte of @a@ and first byte of @b@ based on size of @a@ and alignment of @b@
+-- 
+-- > Given:
+-- > sizeOf    a = 4
+-- > alignment b = 8
+-- >
+-- > 0 1 2 3 4 5 6 7 8 9 A B C D E F
+-- > a a a a . . . . b b b b b b b b 
+-- > |<----------->|        
+-- >        8 bytes offset difference
+offsetDiff :: (Storable a, Storable b) => a -> b -> Int
+offsetDiff a b = sizeOf a + padding a b
+{-# INLINE offsetDiff #-}
+ src/Data/Tensor/Static/TH.hs view
@@ -0,0 +1,75 @@+{-# LANGUAGE TemplateHaskell      #-}
+{-# LANGUAGE ScopedTypeVariables  #-}
+{-# LANGUAGE ViewPatterns         #-}
+{-# OPTIONS_GHC -fno-warn-orphans #-}
+
+-----------------------------------------------------------------------------
+-- |
+-- Module      :  Data.Tensor.Static.TH
+-- Copyright   :  (C) 2017 Alexey Vagarenko
+-- License     :  BSD-style (see LICENSE)
+-- Maintainer  :  Alexey Vagarenko (vagarenko@gmail.com)
+-- Stability   :  experimental
+-- Portability :  non-portable
+--
+----------------------------------------------------------------------------
+
+module Data.Tensor.Static.TH (
+      genTensorInstance
+) where
+
+import Data.List                  (foldl')
+import Data.Tensor.Static         (tensor, Tensor, unsafeFromList, toList, IsTensor)
+import Language.Haskell.TH
+import qualified Data.List.NonEmpty as N
+
+
+-- | Generate instance for tensor and lenses for its elements.
+genTensorInstance :: N.NonEmpty Int     -- ^ Dimensions of the tensor.
+                  -> Name               -- ^ Type of elements.
+                  -> Q [Dec]
+genTensorInstance (N.toList -> dimensions) elemTypeName = do
+    conName <- newName ("Tensor'" ++ concatMap (\x -> show x ++ "'") dimensions ++ nameBase elemTypeName)
+
+    let fieldCount = product dimensions
+    fieldNames <- mapM (newName . ('x' :) . show) [0 .. fieldCount - 1]
+
+    let fields   = replicate (fromIntegral fieldCount) (Bang SourceUnpack SourceStrict, elemType)
+        dims     = natListT dimensions
+        elemType = ConT elemTypeName
+
+    let dataInstDec = DataInstD
+            []                       -- context
+            ''Tensor                 -- family name
+            [dims, elemType]         -- family params
+            (Just StarT)             -- kind
+            [NormalC conName fields] -- data constructor with `fieldCount` unpacked fields of type `elemType`
+            []
+        
+    let fromListPat     = foldr (\name pat -> InfixP (VarP name) '(:) pat) WildP fieldNames
+        constructTensor = foldl' (\acc name -> acc `AppE` VarE name) (ConE conName) fieldNames
+        tensorPat       = ConP conName (map VarP fieldNames)
+        toListBody      = ListE (map VarE fieldNames)
+        failBody        = VarE 'error `AppE` LitE (StringL ("Not enough elements to build a Tensor of shape "
+                                                            ++ show dimensions))
+
+    let tensorDec          = ValD (VarP 'tensor) (NormalB $ ConE conName ) []
+        unsafeFromListDec  = FunD 'unsafeFromList [ Clause [fromListPat] (NormalB constructTensor ) []
+                                                  , Clause [WildP      ] (NormalB failBody        ) []]  
+        toListDec          = FunD 'toList         [ Clause [tensorPat  ] (NormalB toListBody      ) []]
+        tensorCInstPragmas =
+            [ PragmaD (InlineP 'tensor         Inline FunLike AllPhases)
+            , PragmaD (InlineP 'unsafeFromList Inline FunLike AllPhases)
+            , PragmaD (InlineP 'toList         Inline FunLike AllPhases) ]
+
+    let tensorCInstDec = InstanceD
+            Nothing
+            []
+            (ConT ''IsTensor `AppT` dims `AppT` elemType)
+            ([dataInstDec, tensorDec, unsafeFromListDec, toListDec] ++ tensorCInstPragmas)        
+
+    pure [tensorCInstDec]
+
+-- | Create type-level list of Nat.
+natListT :: [Int] -> Type
+natListT = foldr (\d acc -> PromotedConsT `AppT` LitT (NumTyLit $ fromIntegral d) `AppT` acc) PromotedNilT
+ src/Data/Vector/Static.hs view
@@ -0,0 +1,157 @@+{-# LANGUAGE TypeFamilies          #-}
+{-# LANGUAGE MultiParamTypeClasses #-}
+{-# LANGUAGE TypeSynonymInstances  #-}           
+{-# LANGUAGE DataKinds             #-}
+{-# LANGUAGE KindSignatures        #-}
+{-# LANGUAGE TypeOperators         #-}
+{-# LANGUAGE FlexibleInstances     #-}
+{-# LANGUAGE FlexibleContexts      #-}           
+{-# LANGUAGE ScopedTypeVariables   #-}
+{-# LANGUAGE DeriveGeneric         #-}
+{-# LANGUAGE DeriveAnyClass        #-}
+{-# LANGUAGE TemplateHaskell       #-}
+{-# LANGUAGE StandaloneDeriving    #-}           
+{-# LANGUAGE UndecidableInstances  #-}
+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+{-# LANGUAGE AllowAmbiguousTypes   #-}
+{-# LANGUAGE ConstraintKinds       #-}
+
+-----------------------------------------------------------------------------
+-- |
+-- Module      :  Data.Vector.Static
+-- Copyright   :  (C) 2017 Alexey Vagarenko
+-- License     :  BSD-style (see LICENSE)
+-- Maintainer  :  Alexey Vagarenko (vagarenko@gmail.com)
+-- Stability   :  experimental
+-- Portability :  non-portable
+--
+----------------------------------------------------------------------------
+
+module Data.Vector.Static (
+    -- * Vector types
+      Vector
+    , VectorConstructor
+    , IsVector
+    -- ** Construction
+    , vector
+    -- ** Vector Operations
+    , normalize
+    , NormalizedVector
+    , Normalize
+    , unNormalizedVector
+    , vectorLenSquare
+    , VectorLenSquare
+    , vectorLen
+    , VectorLen
+    , dot
+    , Dot
+    , cross
+    -- ** Generating vector instances
+    , genVectorInstance
+) where
+  
+import Data.Containers       (MonoZip(..))
+import Data.MonoTraversable  (omap, osum)
+import Data.Tensor.Static    ( IsTensor(..), scale, Scale, TensorConstructor, withTensor
+                             , MonoFunctorCtx, MonoFoldableCtx, MonoZipCtx)
+import Data.Tensor.Static.TH (genTensorInstance)
+import GHC.Generics          (Generic)
+import GHC.TypeLits          (Nat)
+import Language.Haskell.TH   (Q, Name, Dec)
+import qualified Data.List.NonEmpty as N
+
+---------------------------------------------------------------------------------------------------
+-- | N-dimensional vector.
+type Vector n e = Tensor '[n] e
+
+-- | Type of vector data constructor.
+type VectorConstructor n e = TensorConstructor '[n] e
+
+-- | Vector constraint.
+type IsVector n e = IsTensor '[n] e
+
+-- | Normalized vector.
+newtype NormalizedVector n e =
+    NormalizedVector
+        { unNormalizedVector :: Vector n e
+            -- ^ unwrap 'NormalizedVector'. Note: this does not give you original vector back.
+            --
+            -- @unNormalizedVector . normalize /= id@
+            --
+        }
+    deriving (Generic)
+    
+deriving instance (Eq   (Vector n e)) => Eq   (NormalizedVector n e)
+deriving instance (Show (Vector n e)) => Show (NormalizedVector n e)
+
+---------------------------------------------------------------------------------------------------
+-- | Alias for a conrete vector data constructor.
+vector :: forall n e. (IsVector n e) => VectorConstructor n e
+vector = tensor @'[n] @e
+{-# INLINE vector #-}
+
+-- | Get square of length of a vector.
+vectorLenSquare :: (VectorLenSquare n e) => Vector n e -> e
+vectorLenSquare = osum . omap (\x -> x * x)
+{-# INLINE vectorLenSquare #-}
+
+-- | Constraints for 'vectorLenSquare' function.
+type VectorLenSquare (n :: Nat) e =
+    ( Num e
+    , IsVector n e
+    , MonoFunctorCtx '[n] e
+    , MonoFoldableCtx '[n] e
+    )
+
+-- | Get length of a vector.    
+vectorLen :: (VectorLen n e) => Vector n e -> e
+vectorLen = sqrt . vectorLenSquare
+{-# INLINE vectorLen #-}
+
+-- | Constraints for 'vectorLen' function.
+type VectorLen (n :: Nat) e =
+    ( Floating e
+    , VectorLenSquare n e
+    )
+
+-- | Normalize vector.
+normalize :: (Normalize n e) => Vector n e -> NormalizedVector n e
+normalize v = NormalizedVector $ scale v (1 / vectorLen v)
+{-# INLINE normalize #-}
+
+-- | Constraints for 'normalize' function.
+type Normalize (n :: Nat) e =
+    ( VectorLen n e
+    , Scale '[n] e
+    )
+
+-- | Dot product of two vectors.
+dot :: (Dot n e) => Vector n e -> Vector n e -> e
+dot v1 v2 = osum $ ozipWith (*) v1 v2
+{-# INLINE dot #-}
+
+-- | Constraints for 'dot' function.
+type Dot (n :: Nat) e =
+    ( Num e
+    , IsVector n e
+    , MonoFunctorCtx '[n] e
+    , MonoFoldableCtx '[n] e
+    , MonoZipCtx '[n] e
+    )
+
+---------------------------------------------------------------------------------------------------
+-- | Cross product is only defined for 3-dimensional vectors.
+cross :: (Num e, IsVector 3 e) => Vector 3 e -> Vector 3 e -> Vector 3 e
+cross t0 t1 =
+    withTensor t0 $ \x0 y0 z0 ->
+        withTensor t1 $ \x1 y1 z1 ->
+            vector @3 (y0 * z1 - z0 * y1) (z0 * x1 - x0 * z1) (x0 * y1 - y0 * x1)
+{-# INLINE cross #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Generate instance of a vector.
+genVectorInstance :: Int       -- ^ Size of the vector.
+                  -> Name      -- ^ Type of elements.
+                  -> Q [Dec]
+genVectorInstance size elemTypeName = genTensorInstance (N.fromList [size]) elemTypeName
+ src/Type/List.hs view
@@ -0,0 +1,74 @@+{-# LANGUAGE TypeFamilies            #-}
+{-# LANGUAGE MultiParamTypeClasses   #-}
+{-# LANGUAGE TypeSynonymInstances    #-}           
+{-# LANGUAGE DataKinds               #-}
+{-# LANGUAGE KindSignatures          #-}
+{-# LANGUAGE TypeOperators           #-}
+{-# LANGUAGE FlexibleInstances       #-}
+{-# LANGUAGE FlexibleContexts        #-}           
+{-# LANGUAGE ScopedTypeVariables     #-}
+{-# LANGUAGE DeriveGeneric           #-}
+{-# LANGUAGE DeriveAnyClass          #-}
+{-# LANGUAGE StandaloneDeriving      #-}           
+{-# LANGUAGE UndecidableInstances    #-}
+{-# LANGUAGE TypeApplications        #-}
+{-# LANGUAGE TypeInType              #-}
+{-# LANGUAGE AllowAmbiguousTypes     #-}
+{-# LANGUAGE GADTs                   #-}
+{-# LANGUAGE TypeFamilyDependencies  #-}
+{-# LANGUAGE ConstraintKinds         #-}
+{-# LANGUAGE UndecidableSuperClasses #-}
+{-# LANGUAGE RankNTypes              #-}
+{-# LANGUAGE InstanceSigs            #-}
+{-# LANGUAGE TemplateHaskell         #-}
+
+-----------------------------------------------------------------------------
+-- |
+-- Module      :  Type.List
+-- Copyright   :  (C) 2017 Alexey Vagarenko
+-- License     :  BSD-style (see LICENSE)
+-- Maintainer  :  Alexey Vagarenko (vagarenko@gmail.com)
+-- Stability   :  experimental
+-- Portability :  non-portable
+--
+----------------------------------------------------------------------------
+
+module Type.List where
+
+import Data.Proxy
+import Data.Kind
+import Data.Singletons
+import GHC.TypeLits
+
+-- | Demote type-level list of 'Nat'.
+class KnownNats (ns :: [Nat]) where
+    natsVal :: [Int]
+
+instance KnownNats '[] where
+    natsVal = []
+    {-# INLINE natsVal #-}
+
+instance (KnownNat n, KnownNats ns) => KnownNats (n ': ns) where
+    natsVal = fromInteger (natVal (Proxy @n)) : natsVal @ns
+    {-# INLINE natsVal #-}
+
+---------------------------------------------------------------------------------------------------
+-- | Make a constraint for type @x :: kx@ from 'TyFun', or partially applied constraint, or make an empty constraint.
+type family MkCtx (kx :: Type) (kctx :: Type) (ctx :: kctx) (x :: kx) :: Constraint where
+    MkCtx kx (kx ~> Constraint) ctx  x = Apply ctx x
+    MkCtx kx (kx -> Constraint) ctx  x = ctx x
+    MkCtx _  Constraint         ()   _ = ()
+    MkCtx _  Type               ()   _ = ()
+
+-- | Demote a type-level list to value-level list with a type-indexed function.
+--   The function takes list element as type parameter @x@ and applies constraints @ctx@ for that element.
+class DemoteWith (kx :: Type) (kctx :: Type) (ctx :: kctx) (xs :: [kx]) where
+    demoteWith :: (forall (x :: kx). (MkCtx kx kctx ctx x) => Proxy x -> a) -> [a]
+
+instance DemoteWith kx kctx ctxs '[] where
+    demoteWith _ = []
+    {-# INLINE demoteWith #-}
+
+instance (DemoteWith kx kctx ctx xs, MkCtx kx kctx ctx x) => DemoteWith kx kctx ctx (x ': xs) where
+    demoteWith f = f (Proxy @x) : demoteWith @kx @kctx @ctx @xs f
+    {-# INLINE demoteWith #-}
+ static-tensor.cabal view
@@ -0,0 +1,94 @@+name:                static-tensor
+version:             0.1.0.0
+synopsis:            Tensors of statically known size
+description:         
+    This library provides a toolkit for working with tensors of statically known size and element's type.
+    See README.md
+license:             BSD3
+license-file:        LICENSE
+author:              Alexey Vagarenko
+maintainer:          vagarenko@gmail.com
+bug-reports:         https://github.com/vagarenko/static-tensor/issues
+homepage:            https://github.com/vagarenko/static-tensor
+copyright:           Copyright (C) 2017 Alexey Vagarenko
+category:            Data
+build-type:          Simple
+extra-source-files:
+          ChangeLog.md
+        , README.md
+        , LICENSE
+        , tests/TensorInstances.hs
+        , tests/CoreDump/Tensor/*.hs
+        , tests/CoreDump/Vector/*.hs
+        , tests/CoreDump/Matrix/*.hs
+        , tests/CoreDump/Tensor/*.dump-simpl.ghc821.golden
+        , tests/CoreDump/Vector/*.dump-simpl.ghc821.golden
+        , tests/CoreDump/Matrix/*.dump-simpl.ghc821.golden
+
+cabal-version:       >= 1.10
+tested-with:         GHC == 8.2.1
+
+source-repository head
+        type:     git
+        location: https://github.com/vagarenko/static-tensor.git
+
+library
+    exposed-modules:
+          Data.Tensor.Static 
+        , Data.Tensor.Static.TH
+        , Data.Matrix.Static
+        , Data.Vector.Static
+        , Data.Function.NAry
+        , Data.List.Unrolled
+        , Type.List
+
+    -- other-extensions:    
+    build-depends:
+          base               >= 4.10 && <= 5.0
+        , deepseq            == 1.4.3.*
+        , lens               == 4.15.*
+        , mono-traversable   == 1.0.*
+        , singletons         == 2.3.*
+        , split              == 0.2.*
+        , template-haskell   == 2.12.*
+    hs-source-dirs:      src
+    default-language:    Haskell2010
+    ghc-options:        -Wall -O2 -funbox-strict-fields
+
+benchmark matMul
+    type:                exitcode-stdio-1.0
+    default-language:    Haskell2010
+    hs-source-dirs:      bench
+    main-is:             MatMul.hs
+    ghc-options:         -Wall -O2 -funbox-strict-fields
+    other-modules:
+          MatMul.Linear
+        , MatMul.Unrolled
+        , MatMul.UnrolledFull
+        , MatMul.Vector
+        , MatMul.Vector4
+        , MatMul.Tensor
+    build-depends:
+          base               >= 4.10 && <= 5.0
+        , criterion          == 1.2.*
+        , deepseq            == 1.4.3.*
+        , linear             == 1.20.*
+        , mwc-random         == 0.13.*
+        , static-tensor      
+        , vector             == 0.12.*
+
+test-suite coreDump
+  type:               exitcode-stdio-1.0
+  hs-source-dirs:     tests
+  ghc-options:        -Wall -O2
+  default-language:   Haskell2010
+  main-is:            CoreDump.hs
+
+  build-depends:
+          base               >= 4.10 && <= 5.0
+        , static-tensor
+        , tasty              == 0.11.2.*
+        , tasty-golden       == 2.3.*
+        , text               == 1.2.*
+        , typed-process      == 0.1.*
+        , Diff               == 0.3.*
+ tests/CoreDump.hs view
@@ -0,0 +1,169 @@+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE TypeApplications #-}
+
+module Main where
+
+import Data.Algorithm.Diff
+import Data.Text                    (Text)
+import System.Exit
+import System.Process.Typed
+import Test.Tasty
+import Test.Tasty.Golden.Advanced
+import qualified Data.Text.Lazy.Encoding as TL
+import qualified Data.Text    as T
+import qualified Data.Text.IO as T
+
+main :: IO ()
+main = defaultMain tests
+
+tests :: TestTree
+tests =
+    testGroup "Core Dump"
+        [ testGroup "Tensor" $
+            testFilesInDir "tests/CoreDump/Tensor/"
+                [ "Add"
+                , "Append_0"
+                , "Append_1"
+                , "Append_2"
+                , "Cons_0"
+                , "Cons_1"
+                , "Cons_2"
+                , "Diff"
+                , "EnumFromN"
+                , "EnumFromStepN"
+                , "Fill"
+                , "Generate"
+                , "GenerateKnownNats"
+                , "GenerateSing"
+                , "GetSlice"
+                , "GetSliceElems"
+                , "GetSubtensor"
+                , "GetSubtensorElems"
+                , "MapSliceElems"
+                , "MapSubtensorElems"
+                , "Ofoldl1ExStrict"
+                , "OfoldlStrict"
+                , "OfoldMap"
+                , "Ofoldr"
+                , "Ofoldr1Ex"
+                , "Omap"
+                , "Ounzip"
+                , "Ozip"
+                , "OzipWith"
+                , "Remove_0_0"
+                , "Remove_1_0"
+                , "Remove_2_0"
+                , "Scale"
+                , "SetSlice"
+                , "SetSliceElems"
+                , "SetSubtensor"
+                , "SetSubtensorElems"
+                , "Snoc_0"
+                , "Snoc_1"
+                , "Snoc_2"
+                , "SubtensorOver"
+                , "SubtensorSet"
+                , "SubtensorView"
+                , "TensorElemOver"
+                , "TensorElemSet"
+                , "TensorElemView"
+                , "Zero"
+                ]
+        , testGroup "Vector" $
+            testFilesInDir "tests/CoreDump/Vector/"
+                [ "Cross"
+                , "Dot"
+                , "Normalize"
+                , "VectorLen"
+                , "VectorLenSquare"
+                ]
+        , testGroup "Matrix" $
+            testFilesInDir "tests/CoreDump/Matrix/"
+                [ "Identity"
+                , "RowView"
+                , "RowSet"
+                , "RowOver"
+                , "GetRowElems"
+                , "SetRowElems"
+                , "MapRowElems"
+                , "ColView"
+                , "ColSet"
+                , "ColOver"
+                , "GetColElems"
+                , "SetColElems"
+                , "MapColElems"
+                , "Transpose"
+                , "MultMatMat"
+                , "MultMatVec"
+                , "MultVecMat"
+                , "MinorMatrix"
+                , "Determinant"
+                , "Minor"
+                , "Cofactor"
+                , "CofactorMatrix"
+                , "AdjugateMatrix"
+                , "Inverse"
+                , "MultMatMat5"
+                ]
+        ]
+    where
+        testFilesInDir dir = map (\f -> testCoreDump $ dir ++ f)
+
+testCoreDump :: String -> TestTree
+testCoreDump name =
+    goldenTest
+        name
+        (T.readFile $ name ++ ".dump-simpl.ghc821.golden")
+        (mkCoreDump $ name)
+        cmp
+        (const $ pure ())
+    where
+        cmp golden new = pure $
+            if ng == nn
+                then Nothing
+                else Just
+                    . concatMap showDiff
+                    . filter filterDiff
+                    $ getDiff @(Text, Int) (ng `zip` [4..]) (nn `zip` [4..])
+                    -- line numbers start from 4 because we deleted first 3 lines
+            where
+                ng = normalizeDump golden
+                nn = normalizeDump new
+                filterDiff d = case d of
+                    First  _ -> True
+                    Second _ -> True
+                    Both _ _ -> False
+                showDiff d = case d of
+                    First  (t, ln) -> "Golden file @" ++ show ln ++ ":" ++ T.unpack t ++ "\n"
+                    Second (t, ln) -> "New file    @" ++ show ln ++ ":" ++ T.unpack t ++ "\n"
+                    Both _ _ -> ""
+
+mkCoreDump :: String -> IO Text
+mkCoreDump name = do
+    let p = proc
+                "cabal"
+                [ "exec"
+                , "ghc"
+                , "--"
+                , "-O2"
+                , "-itests"
+                , "-ddump-to-file"
+                , "-ddump-simpl"
+                , "-dsuppress-idinfo"
+                , "-dsuppress-coercions"
+                , "-dsuppress-uniques"
+                , "-fforce-recomp"
+                , name ++ ".hs"
+                ]
+    (ecode, _out, err) <- readProcess p
+    case ecode of
+        ExitFailure _ -> print $ TL.decodeUtf8 err
+        _             -> pure ()
+    T.readFile $ name ++ ".dump-simpl"
+
+normalizeDump :: Text -> [Text]
+normalizeDump t = 
+    case T.lines $ T.replace "\r\n" "\n" t of
+        -- Assuming "Tidy Core" header with timestamp takes the first 3 lines.
+        (_ : _ : _ : xs) -> xs
+        _                -> error "Incorrect dump format."
+ tests/CoreDump/Matrix/AdjugateMatrix.dump-simpl.ghc821.golden view
@@ -0,0 +1,7729 @@+
+==================== Tidy Core ====================
+2017-09-12 21:55:18.9076716 UTC
+
+Result size of Tidy Core
+  = {terms: 3,205, types: 13,903, coercions: 1,360,770, joins: 0/32}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.AdjugateMatrix.$trModule2
+  = "CoreDump.Matrix.AdjugateMatrix"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.AdjugateMatrix.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.AdjugateMatrix.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.AdjugateMatrix.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.AdjugateMatrix.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.AdjugateMatrix.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$trModule :: GHC.Types.Module
+CoreDump.Matrix.AdjugateMatrix.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.AdjugateMatrix.$trModule3
+      CoreDump.Matrix.AdjugateMatrix.$trModule1
+
+-- RHS size: {terms: 8, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 -> GHC.Types.[] @ e
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 10, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 -> GHC.Types.: @ e x (GHC.Types.[] @ e)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True])
+CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 1,586,
+              types: 9,188,
+              coercions: 1,359,938,
+              joins: 0/32}
+adjugateMatrix_ :: Matrix 4 4 Float -> Matrix 4 4 Float
+adjugateMatrix_
+  = \ (x :: Matrix 4 4 Float) ->
+      let {
+        $wf
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[0, 0])
+                  (Data.Matrix.Static.Index1 '[0, 0])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[0, 0])
+                         (Data.Matrix.Static.Index1 '[0, 0])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[0, 0])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[0, 0])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[0, 0])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[0, 0])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[0, 0])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[0, 0])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[0, 0])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[0, 0])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[0, 0])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[0, 0])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[0, 0])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9300>)
+      of
+      { GHC.Types.F# dt1 ->
+      case $wf
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9302>)
+      of
+      { GHC.Types.F# dt3 ->
+      case $wf
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+              `cast` <Co:9302>)
+      of
+      { GHC.Types.F# dt5 ->
+      case $wf
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9302>)
+      of
+      { GHC.Types.F# dt7 ->
+      case $wf
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9304>)
+      of
+      { GHC.Types.F# dt9 ->
+      case $wf
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:9304>)
+      of
+      { GHC.Types.F# dt11 ->
+      case $wf
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+              `cast` <Co:9302>)
+      of
+      { GHC.Types.F# dt13 ->
+      case $wf
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+              `cast` <Co:9304>)
+      of
+      { GHC.Types.F# dt15 ->
+      case $wf
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+              `cast` <Co:9304>)
+      of
+      { GHC.Types.F# dt17 ->
+      let {
+        $wf1
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[0, 1])
+                  (Data.Matrix.Static.Index1 '[0, 1])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf1
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[0, 1])
+                         (Data.Matrix.Static.Index1 '[0, 1])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[0, 1])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[0, 1])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[0, 1])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[0, 1])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[0, 1])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[0, 1])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[0, 1])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[0, 1])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[0, 1])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[0, 1])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[0, 1])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf1
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9342>)
+      of
+      { GHC.Types.F# dt19 ->
+      case $wf1
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9372>)
+      of
+      { GHC.Types.F# dt21 ->
+      case $wf1
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+              `cast` <Co:9372>)
+      of
+      { GHC.Types.F# dt23 ->
+      case $wf1
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9344>)
+      of
+      { GHC.Types.F# dt25 ->
+      case $wf1
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9374>)
+      of
+      { GHC.Types.F# dt27 ->
+      case $wf1
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:9374>)
+      of
+      { GHC.Types.F# dt29 ->
+      case $wf1
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+              `cast` <Co:9344>)
+      of
+      { GHC.Types.F# dt31 ->
+      case $wf1
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+              `cast` <Co:9374>)
+      of
+      { GHC.Types.F# dt33 ->
+      case $wf1
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+              `cast` <Co:9374>)
+      of
+      { GHC.Types.F# dt35 ->
+      let {
+        $wf2
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[0, 2])
+                  (Data.Matrix.Static.Index1 '[0, 2])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf2
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[0, 2])
+                         (Data.Matrix.Static.Index1 '[0, 2])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[0, 2])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[0, 2])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[0, 2])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[0, 2])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[0, 2])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[0, 2])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[0, 2])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[0, 2])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[0, 2])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[0, 2])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[0, 2])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf2
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9342>)
+      of
+      { GHC.Types.F# dt37 ->
+      case $wf2
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9362>)
+      of
+      { GHC.Types.F# dt39 ->
+      case $wf2
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+              `cast` <Co:9372>)
+      of
+      { GHC.Types.F# dt41 ->
+      case $wf2
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9344>)
+      of
+      { GHC.Types.F# dt43 ->
+      case $wf2
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9364>)
+      of
+      { GHC.Types.F# dt45 ->
+      case $wf2
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:9374>)
+      of
+      { GHC.Types.F# dt47 ->
+      case $wf2
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+              `cast` <Co:9344>)
+      of
+      { GHC.Types.F# dt49 ->
+      case $wf2
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+              `cast` <Co:9364>)
+      of
+      { GHC.Types.F# dt51 ->
+      case $wf2
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+              `cast` <Co:9374>)
+      of
+      { GHC.Types.F# dt53 ->
+      let {
+        $wf3
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[0, 3])
+                  (Data.Matrix.Static.Index1 '[0, 3])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf3
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[0, 3])
+                         (Data.Matrix.Static.Index1 '[0, 3])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[0, 3])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[0, 3])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[0, 3])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[0, 3])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[0, 3])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[0, 3])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[0, 3])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[0, 3])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[0, 3])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[0, 3])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[0, 3])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf3
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9342>)
+      of
+      { GHC.Types.F# dt55 ->
+      case $wf3
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9362>)
+      of
+      { GHC.Types.F# dt57 ->
+      case $wf3
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9362>)
+      of
+      { GHC.Types.F# dt59 ->
+      case $wf3
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9344>)
+      of
+      { GHC.Types.F# dt61 ->
+      case $wf3
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9364>)
+      of
+      { GHC.Types.F# dt63 ->
+      case $wf3
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9364>)
+      of
+      { GHC.Types.F# dt65 ->
+      case $wf3
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+              `cast` <Co:9344>)
+      of
+      { GHC.Types.F# dt67 ->
+      case $wf3
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+              `cast` <Co:9364>)
+      of
+      { GHC.Types.F# dt69 ->
+      case $wf3
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+              `cast` <Co:9364>)
+      of
+      { GHC.Types.F# dt71 ->
+      let {
+        $wf4
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[1, 0])
+                  (Data.Matrix.Static.Index1 '[1, 0])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf4
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[1, 0])
+                         (Data.Matrix.Static.Index1 '[1, 0])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[1, 0])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[1, 0])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[1, 0])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[1, 0])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[1, 0])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[1, 0])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[1, 0])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[1, 0])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[1, 0])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[1, 0])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[1, 0])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf4
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9346>)
+      of
+      { GHC.Types.F# dt73 ->
+      case $wf4
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9348>)
+      of
+      { GHC.Types.F# dt75 ->
+      case $wf4
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+              `cast` <Co:9348>)
+      of
+      { GHC.Types.F# dt77 ->
+      case $wf4
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9376>)
+      of
+      { GHC.Types.F# dt79 ->
+      case $wf4
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9378>)
+      of
+      { GHC.Types.F# dt81 ->
+      case $wf4
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:9378>)
+      of
+      { GHC.Types.F# dt83 ->
+      case $wf4
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+              `cast` <Co:9376>)
+      of
+      { GHC.Types.F# dt85 ->
+      case $wf4
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+              `cast` <Co:9378>)
+      of
+      { GHC.Types.F# dt87 ->
+      case $wf4
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+              `cast` <Co:9378>)
+      of
+      { GHC.Types.F# dt89 ->
+      let {
+        $wf5
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[1, 1])
+                  (Data.Matrix.Static.Index1 '[1, 1])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf5
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[1, 1])
+                         (Data.Matrix.Static.Index1 '[1, 1])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[1, 1])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[1, 1])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[1, 1])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[1, 1])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[1, 1])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[1, 1])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[1, 1])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[1, 1])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[1, 1])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[1, 1])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[1, 1])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf5
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9388>)
+      of
+      { GHC.Types.F# dt91 ->
+      case $wf5
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt93 ->
+      case $wf5
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt95 ->
+      case $wf5
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt97 ->
+      case $wf5
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9448>)
+      of
+      { GHC.Types.F# dt99 ->
+      case $wf5
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:9448>)
+      of
+      { GHC.Types.F# dt101 ->
+      case $wf5
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt103 ->
+      case $wf5
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+              `cast` <Co:9448>)
+      of
+      { GHC.Types.F# dt105 ->
+      case $wf5
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+              `cast` <Co:9448>)
+      of
+      { GHC.Types.F# dt107 ->
+      let {
+        $wf6
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[1, 2])
+                  (Data.Matrix.Static.Index1 '[1, 2])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf6
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[1, 2])
+                         (Data.Matrix.Static.Index1 '[1, 2])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[1, 2])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[1, 2])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[1, 2])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[1, 2])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[1, 2])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[1, 2])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[1, 2])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[1, 2])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[1, 2])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[1, 2])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[1, 2])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf6
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9388>)
+      of
+      { GHC.Types.F# dt109 ->
+      case $wf6
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt111 ->
+      case $wf6
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt113 ->
+      case $wf6
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt115 ->
+      case $wf6
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt117 ->
+      case $wf6
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:9448>)
+      of
+      { GHC.Types.F# dt119 ->
+      case $wf6
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt121 ->
+      case $wf6
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt123 ->
+      case $wf6
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+              `cast` <Co:9448>)
+      of
+      { GHC.Types.F# dt125 ->
+      let {
+        $wf7
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[1, 3])
+                  (Data.Matrix.Static.Index1 '[1, 3])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf7
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[1, 3])
+                         (Data.Matrix.Static.Index1 '[1, 3])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[1, 3])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[1, 3])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[1, 3])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[1, 3])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[1, 3])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[1, 3])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[1, 3])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[1, 3])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[1, 3])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[1, 3])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[1, 3])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf7
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9388>)
+      of
+      { GHC.Types.F# dt127 ->
+      case $wf7
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt129 ->
+      case $wf7
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt131 ->
+      case $wf7
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt133 ->
+      case $wf7
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt135 ->
+      case $wf7
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt137 ->
+      case $wf7
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt139 ->
+      case $wf7
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt141 ->
+      case $wf7
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt143 ->
+      let {
+        $wf8
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[2, 0])
+                  (Data.Matrix.Static.Index1 '[2, 0])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf8
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[2, 0])
+                         (Data.Matrix.Static.Index1 '[2, 0])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[2, 0])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[2, 0])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[2, 0])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[2, 0])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[2, 0])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[2, 0])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[2, 0])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[2, 0])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[2, 0])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[2, 0])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[2, 0])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf8
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9346>)
+      of
+      { GHC.Types.F# dt145 ->
+      case $wf8
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9348>)
+      of
+      { GHC.Types.F# dt147 ->
+      case $wf8
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+              `cast` <Co:9348>)
+      of
+      { GHC.Types.F# dt149 ->
+      case $wf8
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9366>)
+      of
+      { GHC.Types.F# dt151 ->
+      case $wf8
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9368>)
+      of
+      { GHC.Types.F# dt153 ->
+      case $wf8
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+              `cast` <Co:9368>)
+      of
+      { GHC.Types.F# dt155 ->
+      case $wf8
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+              `cast` <Co:9376>)
+      of
+      { GHC.Types.F# dt157 ->
+      case $wf8
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+              `cast` <Co:9378>)
+      of
+      { GHC.Types.F# dt159 ->
+      case $wf8
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+              `cast` <Co:9378>)
+      of
+      { GHC.Types.F# dt161 ->
+      let {
+        $wf9
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[2, 1])
+                  (Data.Matrix.Static.Index1 '[2, 1])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf9
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[2, 1])
+                         (Data.Matrix.Static.Index1 '[2, 1])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[2, 1])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[2, 1])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[2, 1])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[2, 1])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[2, 1])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[2, 1])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[2, 1])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[2, 1])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[2, 1])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[2, 1])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[2, 1])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf9
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9388>)
+      of
+      { GHC.Types.F# dt163 ->
+      case $wf9
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt165 ->
+      case $wf9
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt167 ->
+      case $wf9
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt169 ->
+      case $wf9
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt171 ->
+      case $wf9
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt173 ->
+      case $wf9
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt175 ->
+      case $wf9
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+              `cast` <Co:9448>)
+      of
+      { GHC.Types.F# dt177 ->
+      case $wf9
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+              `cast` <Co:9448>)
+      of
+      { GHC.Types.F# dt179 ->
+      let {
+        $wf10
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[2, 2])
+                  (Data.Matrix.Static.Index1 '[2, 2])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf10
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[2, 2])
+                         (Data.Matrix.Static.Index1 '[2, 2])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[2, 2])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[2, 2])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[2, 2])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[2, 2])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[2, 2])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[2, 2])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[2, 2])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[2, 2])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[2, 2])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[2, 2])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[2, 2])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf10
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9388>)
+      of
+      { GHC.Types.F# dt181 ->
+      case $wf10
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt183 ->
+      case $wf10
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt185 ->
+      case $wf10
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt187 ->
+      case $wf10
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9428>)
+      of
+      { GHC.Types.F# dt189 ->
+      case $wf10
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt191 ->
+      case $wf10
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt193 ->
+      case $wf10
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt195 ->
+      case $wf10
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+              `cast` <Co:9448>)
+      of
+      { GHC.Types.F# dt197 ->
+      let {
+        $wf11
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[2, 3])
+                  (Data.Matrix.Static.Index1 '[2, 3])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf11
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[2, 3])
+                         (Data.Matrix.Static.Index1 '[2, 3])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[2, 3])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[2, 3])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[2, 3])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[2, 3])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[2, 3])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[2, 3])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[2, 3])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[2, 3])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[2, 3])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[2, 3])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[2, 3])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf11
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9388>)
+      of
+      { GHC.Types.F# dt199 ->
+      case $wf11
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt201 ->
+      case $wf11
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt203 ->
+      case $wf11
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt205 ->
+      case $wf11
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9428>)
+      of
+      { GHC.Types.F# dt207 ->
+      case $wf11
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9428>)
+      of
+      { GHC.Types.F# dt209 ->
+      case $wf11
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt211 ->
+      case $wf11
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt213 ->
+      case $wf11
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt215 ->
+      let {
+        $wf12
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[3, 0])
+                  (Data.Matrix.Static.Index1 '[3, 0])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf12
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[3, 0])
+                         (Data.Matrix.Static.Index1 '[3, 0])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[3, 0])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[3, 0])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[3, 0])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[3, 0])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[3, 0])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[3, 0])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[3, 0])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[3, 0])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[3, 0])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[3, 0])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[3, 0])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf12
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9346>)
+      of
+      { GHC.Types.F# dt217 ->
+      case $wf12
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9348>)
+      of
+      { GHC.Types.F# dt219 ->
+      case $wf12
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+              `cast` <Co:9348>)
+      of
+      { GHC.Types.F# dt221 ->
+      case $wf12
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9366>)
+      of
+      { GHC.Types.F# dt223 ->
+      case $wf12
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9368>)
+      of
+      { GHC.Types.F# dt225 ->
+      case $wf12
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+              `cast` <Co:9368>)
+      of
+      { GHC.Types.F# dt227 ->
+      case $wf12
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9366>)
+      of
+      { GHC.Types.F# dt229 ->
+      case $wf12
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9368>)
+      of
+      { GHC.Types.F# dt231 ->
+      case $wf12
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:9368>)
+      of
+      { GHC.Types.F# dt233 ->
+      let {
+        $wf13
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[3, 1])
+                  (Data.Matrix.Static.Index1 '[3, 1])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf13
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[3, 1])
+                         (Data.Matrix.Static.Index1 '[3, 1])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[3, 1])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[3, 1])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[3, 1])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[3, 1])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[3, 1])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[3, 1])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[3, 1])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[3, 1])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[3, 1])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[3, 1])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[3, 1])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf13
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9388>)
+      of
+      { GHC.Types.F# dt235 ->
+      case $wf13
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt237 ->
+      case $wf13
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt239 ->
+      case $wf13
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt241 ->
+      case $wf13
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt243 ->
+      case $wf13
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt245 ->
+      case $wf13
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt247 ->
+      case $wf13
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt249 ->
+      case $wf13
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt251 ->
+      let {
+        $wf14
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[3, 2])
+                  (Data.Matrix.Static.Index1 '[3, 2])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf14
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[3, 2])
+                         (Data.Matrix.Static.Index1 '[3, 2])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[3, 2])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[3, 2])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[3, 2])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[3, 2])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[3, 2])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[3, 2])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[3, 2])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[3, 2])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[3, 2])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[3, 2])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[3, 2])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf14
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9388>)
+      of
+      { GHC.Types.F# dt253 ->
+      case $wf14
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt255 ->
+      case $wf14
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+              `cast` <Co:9418>)
+      of
+      { GHC.Types.F# dt257 ->
+      case $wf14
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt259 ->
+      case $wf14
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9428>)
+      of
+      { GHC.Types.F# dt261 ->
+      case $wf14
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt263 ->
+      case $wf14
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt265 ->
+      case $wf14
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9428>)
+      of
+      { GHC.Types.F# dt267 ->
+      case $wf14
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:9438>)
+      of
+      { GHC.Types.F# dt269 ->
+      let {
+        $wf15
+          :: forall (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 '[3, 3])
+                  (Data.Matrix.Static.Index1 '[3, 3])
+                  4
+                  Float)
+               index =>
+             Float
+        $wf15
+          = \ (@ (index :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 '[3, 3])
+                         (Data.Matrix.Static.Index1 '[3, 3])
+                         4
+                         Float)
+                      index) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[3, 3])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[3, 3])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[3, 3])
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 '[3, 3])
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 '[3, 3])
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:237>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 '[3, 3])
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 '[3, 3])
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:50>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 '[3, 3])
+                                  (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 '[3, 3])
+                                  (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:50>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 '[3, 3])
+                                   (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 '[3, 3])
+                                   (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:50>))
+                    `cast` <Co:48>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 x)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x1 ds1 -> x1
+              }
+              }
+              }
+              } } in
+      case $wf15
+             @ '[0, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9388>)
+      of
+      { GHC.Types.F# dt271 ->
+      case $wf15
+             @ '[0, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt273 ->
+      case $wf15
+             @ '[0, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt275 ->
+      case $wf15
+             @ '[1, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt277 ->
+      case $wf15
+             @ '[1, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9428>)
+      of
+      { GHC.Types.F# dt279 ->
+      case $wf15
+             @ '[1, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9428>)
+      of
+      { GHC.Types.F# dt281 ->
+      case $wf15
+             @ '[2, 0]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9408>)
+      of
+      { GHC.Types.F# dt283 ->
+      case $wf15
+             @ '[2, 1]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9428>)
+      of
+      { GHC.Types.F# dt285 ->
+      case $wf15
+             @ '[2, 2]
+             (CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9428>)
+      of
+      { GHC.Types.F# dt287 ->
+      (TensorInstances.Tensor'4'4'Float
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.minusFloat#
+               (GHC.Prim.timesFloat#
+                  dt1
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt9 dt17) (GHC.Prim.timesFloat# dt11 dt15)))
+               (GHC.Prim.timesFloat#
+                  dt3
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt7 dt17) (GHC.Prim.timesFloat# dt11 dt13))))
+            (GHC.Prim.timesFloat#
+               dt5
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat# dt7 dt15) (GHC.Prim.timesFloat# dt9 dt13))))
+         (GHC.Prim.timesFloat#
+            -1.0#
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat#
+                     dt73
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt81 dt89) (GHC.Prim.timesFloat# dt83 dt87)))
+                  (GHC.Prim.timesFloat#
+                     dt75
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt79 dt89)
+                        (GHC.Prim.timesFloat# dt83 dt85))))
+               (GHC.Prim.timesFloat#
+                  dt77
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt79 dt87)
+                     (GHC.Prim.timesFloat# dt81 dt85)))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.minusFloat#
+               (GHC.Prim.timesFloat#
+                  dt145
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt153 dt161)
+                     (GHC.Prim.timesFloat# dt155 dt159)))
+               (GHC.Prim.timesFloat#
+                  dt147
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt151 dt161)
+                     (GHC.Prim.timesFloat# dt155 dt157))))
+            (GHC.Prim.timesFloat#
+               dt149
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat# dt151 dt159)
+                  (GHC.Prim.timesFloat# dt153 dt157))))
+         (GHC.Prim.timesFloat#
+            -1.0#
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat#
+                     dt217
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt225 dt233)
+                        (GHC.Prim.timesFloat# dt227 dt231)))
+                  (GHC.Prim.timesFloat#
+                     dt219
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt223 dt233)
+                        (GHC.Prim.timesFloat# dt227 dt229))))
+               (GHC.Prim.timesFloat#
+                  dt221
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt223 dt231)
+                     (GHC.Prim.timesFloat# dt225 dt229)))))
+         (GHC.Prim.timesFloat#
+            -1.0#
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat#
+                     dt19
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt27 dt35) (GHC.Prim.timesFloat# dt29 dt33)))
+                  (GHC.Prim.timesFloat#
+                     dt21
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt25 dt35)
+                        (GHC.Prim.timesFloat# dt29 dt31))))
+               (GHC.Prim.timesFloat#
+                  dt23
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt25 dt33)
+                     (GHC.Prim.timesFloat# dt27 dt31)))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.minusFloat#
+               (GHC.Prim.timesFloat#
+                  dt91
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt99 dt107)
+                     (GHC.Prim.timesFloat# dt101 dt105)))
+               (GHC.Prim.timesFloat#
+                  dt93
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt97 dt107)
+                     (GHC.Prim.timesFloat# dt101 dt103))))
+            (GHC.Prim.timesFloat#
+               dt95
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat# dt97 dt105)
+                  (GHC.Prim.timesFloat# dt99 dt103))))
+         (GHC.Prim.timesFloat#
+            -1.0#
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat#
+                     dt163
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt171 dt179)
+                        (GHC.Prim.timesFloat# dt173 dt177)))
+                  (GHC.Prim.timesFloat#
+                     dt165
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt169 dt179)
+                        (GHC.Prim.timesFloat# dt173 dt175))))
+               (GHC.Prim.timesFloat#
+                  dt167
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt169 dt177)
+                     (GHC.Prim.timesFloat# dt171 dt175)))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.minusFloat#
+               (GHC.Prim.timesFloat#
+                  dt235
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt243 dt251)
+                     (GHC.Prim.timesFloat# dt245 dt249)))
+               (GHC.Prim.timesFloat#
+                  dt237
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt241 dt251)
+                     (GHC.Prim.timesFloat# dt245 dt247))))
+            (GHC.Prim.timesFloat#
+               dt239
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat# dt241 dt249)
+                  (GHC.Prim.timesFloat# dt243 dt247))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.minusFloat#
+               (GHC.Prim.timesFloat#
+                  dt37
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt45 dt53) (GHC.Prim.timesFloat# dt47 dt51)))
+               (GHC.Prim.timesFloat#
+                  dt39
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt43 dt53)
+                     (GHC.Prim.timesFloat# dt47 dt49))))
+            (GHC.Prim.timesFloat#
+               dt41
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat# dt43 dt51)
+                  (GHC.Prim.timesFloat# dt45 dt49))))
+         (GHC.Prim.timesFloat#
+            -1.0#
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat#
+                     dt109
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt117 dt125)
+                        (GHC.Prim.timesFloat# dt119 dt123)))
+                  (GHC.Prim.timesFloat#
+                     dt111
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt115 dt125)
+                        (GHC.Prim.timesFloat# dt119 dt121))))
+               (GHC.Prim.timesFloat#
+                  dt113
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt115 dt123)
+                     (GHC.Prim.timesFloat# dt117 dt121)))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.minusFloat#
+               (GHC.Prim.timesFloat#
+                  dt181
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt189 dt197)
+                     (GHC.Prim.timesFloat# dt191 dt195)))
+               (GHC.Prim.timesFloat#
+                  dt183
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt187 dt197)
+                     (GHC.Prim.timesFloat# dt191 dt193))))
+            (GHC.Prim.timesFloat#
+               dt185
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat# dt187 dt195)
+                  (GHC.Prim.timesFloat# dt189 dt193))))
+         (GHC.Prim.timesFloat#
+            -1.0#
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat#
+                     dt253
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt261 dt269)
+                        (GHC.Prim.timesFloat# dt263 dt267)))
+                  (GHC.Prim.timesFloat#
+                     dt255
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt259 dt269)
+                        (GHC.Prim.timesFloat# dt263 dt265))))
+               (GHC.Prim.timesFloat#
+                  dt257
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt259 dt267)
+                     (GHC.Prim.timesFloat# dt261 dt265)))))
+         (GHC.Prim.timesFloat#
+            -1.0#
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat#
+                     dt55
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt63 dt71) (GHC.Prim.timesFloat# dt65 dt69)))
+                  (GHC.Prim.timesFloat#
+                     dt57
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt61 dt71)
+                        (GHC.Prim.timesFloat# dt65 dt67))))
+               (GHC.Prim.timesFloat#
+                  dt59
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt61 dt69)
+                     (GHC.Prim.timesFloat# dt63 dt67)))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.minusFloat#
+               (GHC.Prim.timesFloat#
+                  dt127
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt135 dt143)
+                     (GHC.Prim.timesFloat# dt137 dt141)))
+               (GHC.Prim.timesFloat#
+                  dt129
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt133 dt143)
+                     (GHC.Prim.timesFloat# dt137 dt139))))
+            (GHC.Prim.timesFloat#
+               dt131
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat# dt133 dt141)
+                  (GHC.Prim.timesFloat# dt135 dt139))))
+         (GHC.Prim.timesFloat#
+            -1.0#
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat#
+                     dt199
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt207 dt215)
+                        (GHC.Prim.timesFloat# dt209 dt213)))
+                  (GHC.Prim.timesFloat#
+                     dt201
+                     (GHC.Prim.minusFloat#
+                        (GHC.Prim.timesFloat# dt205 dt215)
+                        (GHC.Prim.timesFloat# dt209 dt211))))
+               (GHC.Prim.timesFloat#
+                  dt203
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt205 dt213)
+                     (GHC.Prim.timesFloat# dt207 dt211)))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.minusFloat#
+               (GHC.Prim.timesFloat#
+                  dt271
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt279 dt287)
+                     (GHC.Prim.timesFloat# dt281 dt285)))
+               (GHC.Prim.timesFloat#
+                  dt273
+                  (GHC.Prim.minusFloat#
+                     (GHC.Prim.timesFloat# dt277 dt287)
+                     (GHC.Prim.timesFloat# dt281 dt283))))
+            (GHC.Prim.timesFloat#
+               dt275
+               (GHC.Prim.minusFloat#
+                  (GHC.Prim.timesFloat# dt277 dt285)
+                  (GHC.Prim.timesFloat# dt279 dt283)))))
+      `cast` <Co:2>
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+
+
+------ Local rules for imported ids --------
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.AdjugateMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.AdjugateMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+
+ tests/CoreDump/Matrix/AdjugateMatrix.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.AdjugateMatrix where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+-- FIXME: Generates terrible Core.
+adjugateMatrix_ :: Matrix 4 4 Float -> Matrix 4 4 Float
+adjugateMatrix_ = adjugateMatrix
+ tests/CoreDump/Matrix/Cofactor.dump-simpl.ghc821.golden view
@@ -0,0 +1,14783 @@+
+==================== Tidy Core ====================
+2017-09-13 23:41:58.3328022 UTC
+
+Result size of Tidy Core
+  = {terms: 4,464, types: 30,018, coercions: 715,292, joins: 0/18}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.Cofactor.$trModule2 = "CoreDump.Matrix.Cofactor"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.Cofactor.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.Cofactor.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.Cofactor.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.Cofactor.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.Cofactor.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$trModule :: GHC.Types.Module
+CoreDump.Matrix.Cofactor.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.Cofactor.$trModule3
+      CoreDump.Matrix.Cofactor.$trModule1
+
+-- RHS size: {terms: 3, types: 1, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+  :: Num Float => Matrix 3 3 Float -> Float
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+  = Data.Matrix.Static.$fDeterminant3e_$cdeterminant
+      @ Float GHC.Float.$fNumFloat TensorInstances.$fIsTensor:Float3
+
+-- RHS size: {terms: 1, types: 8, coercions: 2, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$d~~
+  :: ('[] :: [GHC.Types.Nat]) ~~ ('[] :: [GHC.Types.Nat])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$d~~
+  = GHC.Types.Eq#
+      @ [GHC.Types.Nat] @ [GHC.Types.Nat] @ '[] @ '[] @~ <Co:2>
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl :: GHC.Prim.Addr#
+lvl = "error"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl1 :: [Char]
+lvl1 = GHC.CString.unpackCString# lvl
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl2 :: GHC.Prim.Addr#
+lvl2 = "static-tensor-0.1.0.0-1bgjq3JOZMoDpQl5pqUrpL"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl3 :: [Char]
+lvl3 = GHC.CString.unpackCString# lvl2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl4 :: GHC.Prim.Addr#
+lvl4 = "Data.Tensor.Static"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl5 :: [Char]
+lvl5 = GHC.CString.unpackCString# lvl4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl6 :: GHC.Prim.Addr#
+lvl6 = "src\\Data\\Tensor\\Static.hs"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl7 :: [Char]
+lvl7 = GHC.CString.unpackCString# lvl6
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl8 :: Int
+lvl8 = GHC.Types.I# 871#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl9 :: Int
+lvl9 = GHC.Types.I# 5#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl10 :: Int
+lvl10 = GHC.Types.I# 91#
+
+-- RHS size: {terms: 8, types: 0, coercions: 0, joins: 0/0}
+lvl11 :: GHC.Stack.Types.SrcLoc
+lvl11 = GHC.Stack.Types.SrcLoc lvl3 lvl5 lvl7 lvl8 lvl9 lvl8 lvl10
+
+-- RHS size: {terms: 4, types: 0, coercions: 0, joins: 0/0}
+lvl12 :: GHC.Stack.Types.CallStack
+lvl12
+  = GHC.Stack.Types.PushCallStack
+      lvl1 lvl11 GHC.Stack.Types.EmptyCallStack
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl13 :: GHC.Prim.Addr#
+lvl13
+  = "Impossible happend! Not enough elements in the tensor. Please report this bug."#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl14 :: [Char]
+lvl14 = GHC.CString.unpackCString# lvl13
+
+-- RHS size: {terms: 4, types: 6, coercions: 4, joins: 0/0}
+lvl15 :: forall e. Maybe [e]
+lvl15
+  = \ (@ e) ->
+      error
+        @ 'GHC.Types.LiftedRep @ (Maybe [e]) (lvl12 `cast` <Co:4>) lvl14
+
+-- RHS size: {terms: 122, types: 130, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk1
+  :: forall e. [e] -> [e] -> Maybe [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) (ds1 :: [e]) ->
+      case ds of {
+        [] ->
+          Data.Tensor.Static.impossible_notEnoughTensorElems @ (Maybe [e]);
+        : x xs1 ->
+          case xs1 of {
+            [] -> lvl15 @ e;
+            : x1 xs2 ->
+              case xs2 of {
+                [] -> lvl15 @ e;
+                : ipv ipv1 ->
+                  case ds1 of {
+                    [] -> GHC.Base.Nothing @ [e];
+                    : ipv2 ipv3 ->
+                      case ipv1 of {
+                        [] -> lvl15 @ e;
+                        : x2 xs3 ->
+                          case xs3 of {
+                            [] -> lvl15 @ e;
+                            : x3 xs4 ->
+                              case xs4 of {
+                                [] -> lvl15 @ e;
+                                : x4 xs5 ->
+                                  case xs5 of {
+                                    [] -> lvl15 @ e;
+                                    : x5 xs6 ->
+                                      case xs6 of {
+                                        [] -> lvl15 @ e;
+                                        : x6 xs7 ->
+                                          case xs7 of {
+                                            [] -> lvl15 @ e;
+                                            : x7 xs8 ->
+                                              case xs8 of {
+                                                [] -> lvl15 @ e;
+                                                : x8 xs9 ->
+                                                  case xs9 of {
+                                                    [] -> lvl15 @ e;
+                                                    : x9 xs10 ->
+                                                      case xs10 of {
+                                                        [] -> lvl15 @ e;
+                                                        : x10 xs11 ->
+                                                          case xs11 of {
+                                                            [] -> lvl15 @ e;
+                                                            : x11 xs12 ->
+                                                              case xs12 of {
+                                                                [] -> lvl15 @ e;
+                                                                : x12 xs13 ->
+                                                                  case xs13 of {
+                                                                    [] -> lvl15 @ e;
+                                                                    : x13 xs14 ->
+                                                                      case xs14 of {
+                                                                        [] -> lvl15 @ e;
+                                                                        : x14 xs15 ->
+                                                                          GHC.Base.Just
+                                                                            @ [e]
+                                                                            (GHC.Types.:
+                                                                               @ e
+                                                                               x
+                                                                               (GHC.Types.:
+                                                                                  @ e
+                                                                                  x1
+                                                                                  (GHC.Types.:
+                                                                                     @ e
+                                                                                     ipv2
+                                                                                     (GHC.Types.:
+                                                                                        @ e
+                                                                                        x2
+                                                                                        (GHC.Types.:
+                                                                                           @ e
+                                                                                           x3
+                                                                                           (GHC.Types.:
+                                                                                              @ e
+                                                                                              x4
+                                                                                              (GHC.Types.:
+                                                                                                 @ e
+                                                                                                 x5
+                                                                                                 (GHC.Types.:
+                                                                                                    @ e
+                                                                                                    x6
+                                                                                                    (GHC.Types.:
+                                                                                                       @ e
+                                                                                                       x7
+                                                                                                       (GHC.Types.:
+                                                                                                          @ e
+                                                                                                          x8
+                                                                                                          (GHC.Types.:
+                                                                                                             @ e
+                                                                                                             x9
+                                                                                                             (GHC.Types.:
+                                                                                                                @ e
+                                                                                                                x10
+                                                                                                                (GHC.Types.:
+                                                                                                                   @ e
+                                                                                                                   x11
+                                                                                                                   (GHC.Types.:
+                                                                                                                      @ e
+                                                                                                                      x12
+                                                                                                                      (GHC.Types.:
+                                                                                                                         @ e
+                                                                                                                         x13
+                                                                                                                         (GHC.Types.:
+                                                                                                                            @ e
+                                                                                                                            x14
+                                                                                                                            (GHC.Types.[]
+                                                                                                                               @ e)))))))))))))))))
+                                                                      }
+                                                                  }
+                                                              }
+                                                          }
+                                                      }
+                                                  }
+                                              }
+                                          }
+                                      }
+                                  }
+                              }
+                          }
+                      }
+                  }
+              }
+          }
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith47
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.SetSliceElemsWrk
+        '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith47
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk1
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 122, types: 130, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk2
+  :: forall e. [e] -> [e] -> Maybe [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) (ds1 :: [e]) ->
+      case ds of {
+        [] ->
+          Data.Tensor.Static.impossible_notEnoughTensorElems @ (Maybe [e]);
+        : x xs1 ->
+          case xs1 of {
+            [] -> lvl15 @ e;
+            : ipv ipv1 ->
+              case ds1 of {
+                [] -> GHC.Base.Nothing @ [e];
+                : ipv2 ipv3 ->
+                  case ipv1 of {
+                    [] -> lvl15 @ e;
+                    : x1 xs2 ->
+                      case xs2 of {
+                        [] -> lvl15 @ e;
+                        : x2 xs3 ->
+                          case xs3 of {
+                            [] -> lvl15 @ e;
+                            : x3 xs4 ->
+                              case xs4 of {
+                                [] -> lvl15 @ e;
+                                : x4 xs5 ->
+                                  case xs5 of {
+                                    [] -> lvl15 @ e;
+                                    : x5 xs6 ->
+                                      case xs6 of {
+                                        [] -> lvl15 @ e;
+                                        : x6 xs7 ->
+                                          case xs7 of {
+                                            [] -> lvl15 @ e;
+                                            : x7 xs8 ->
+                                              case xs8 of {
+                                                [] -> lvl15 @ e;
+                                                : x8 xs9 ->
+                                                  case xs9 of {
+                                                    [] -> lvl15 @ e;
+                                                    : x9 xs10 ->
+                                                      case xs10 of {
+                                                        [] -> lvl15 @ e;
+                                                        : x10 xs11 ->
+                                                          case xs11 of {
+                                                            [] -> lvl15 @ e;
+                                                            : x11 xs12 ->
+                                                              case xs12 of {
+                                                                [] -> lvl15 @ e;
+                                                                : x12 xs13 ->
+                                                                  case xs13 of {
+                                                                    [] -> lvl15 @ e;
+                                                                    : x13 xs14 ->
+                                                                      case xs14 of {
+                                                                        [] -> lvl15 @ e;
+                                                                        : x14 xs15 ->
+                                                                          GHC.Base.Just
+                                                                            @ [e]
+                                                                            (GHC.Types.:
+                                                                               @ e
+                                                                               x
+                                                                               (GHC.Types.:
+                                                                                  @ e
+                                                                                  ipv2
+                                                                                  (GHC.Types.:
+                                                                                     @ e
+                                                                                     x1
+                                                                                     (GHC.Types.:
+                                                                                        @ e
+                                                                                        x2
+                                                                                        (GHC.Types.:
+                                                                                           @ e
+                                                                                           x3
+                                                                                           (GHC.Types.:
+                                                                                              @ e
+                                                                                              x4
+                                                                                              (GHC.Types.:
+                                                                                                 @ e
+                                                                                                 x5
+                                                                                                 (GHC.Types.:
+                                                                                                    @ e
+                                                                                                    x6
+                                                                                                    (GHC.Types.:
+                                                                                                       @ e
+                                                                                                       x7
+                                                                                                       (GHC.Types.:
+                                                                                                          @ e
+                                                                                                          x8
+                                                                                                          (GHC.Types.:
+                                                                                                             @ e
+                                                                                                             x9
+                                                                                                             (GHC.Types.:
+                                                                                                                @ e
+                                                                                                                x10
+                                                                                                                (GHC.Types.:
+                                                                                                                   @ e
+                                                                                                                   x11
+                                                                                                                   (GHC.Types.:
+                                                                                                                      @ e
+                                                                                                                      x12
+                                                                                                                      (GHC.Types.:
+                                                                                                                         @ e
+                                                                                                                         x13
+                                                                                                                         (GHC.Types.:
+                                                                                                                            @ e
+                                                                                                                            x14
+                                                                                                                            (GHC.Types.[]
+                                                                                                                               @ e)))))))))))))))))
+                                                                      }
+                                                                  }
+                                                              }
+                                                          }
+                                                      }
+                                                  }
+                                              }
+                                          }
+                                      }
+                                  }
+                              }
+                          }
+                      }
+                  }
+              }
+          }
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith63
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.SetSliceElemsWrk
+        '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith63
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk2
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 122, types: 130, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:0_$csetSliceElemsWrk
+  :: forall e. [e] -> [e] -> Maybe [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:0_$csetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) (ds1 :: [e]) ->
+      case ds of {
+        [] ->
+          Data.Tensor.Static.impossible_notEnoughTensorElems @ (Maybe [e]);
+        : ipv ipv1 ->
+          case ds1 of {
+            [] -> GHC.Base.Nothing @ [e];
+            : ipv2 ipv3 ->
+              case ipv1 of {
+                [] -> lvl15 @ e;
+                : x xs1 ->
+                  case xs1 of {
+                    [] -> lvl15 @ e;
+                    : x1 xs2 ->
+                      case xs2 of {
+                        [] -> lvl15 @ e;
+                        : x2 xs3 ->
+                          case xs3 of {
+                            [] -> lvl15 @ e;
+                            : x3 xs4 ->
+                              case xs4 of {
+                                [] -> lvl15 @ e;
+                                : x4 xs5 ->
+                                  case xs5 of {
+                                    [] -> lvl15 @ e;
+                                    : x5 xs6 ->
+                                      case xs6 of {
+                                        [] -> lvl15 @ e;
+                                        : x6 xs7 ->
+                                          case xs7 of {
+                                            [] -> lvl15 @ e;
+                                            : x7 xs8 ->
+                                              case xs8 of {
+                                                [] -> lvl15 @ e;
+                                                : x8 xs9 ->
+                                                  case xs9 of {
+                                                    [] -> lvl15 @ e;
+                                                    : x9 xs10 ->
+                                                      case xs10 of {
+                                                        [] -> lvl15 @ e;
+                                                        : x10 xs11 ->
+                                                          case xs11 of {
+                                                            [] -> lvl15 @ e;
+                                                            : x11 xs12 ->
+                                                              case xs12 of {
+                                                                [] -> lvl15 @ e;
+                                                                : x12 xs13 ->
+                                                                  case xs13 of {
+                                                                    [] -> lvl15 @ e;
+                                                                    : x13 xs14 ->
+                                                                      case xs14 of {
+                                                                        [] -> lvl15 @ e;
+                                                                        : x14 xs15 ->
+                                                                          GHC.Base.Just
+                                                                            @ [e]
+                                                                            (GHC.Types.:
+                                                                               @ e
+                                                                               ipv2
+                                                                               (GHC.Types.:
+                                                                                  @ e
+                                                                                  x
+                                                                                  (GHC.Types.:
+                                                                                     @ e
+                                                                                     x1
+                                                                                     (GHC.Types.:
+                                                                                        @ e
+                                                                                        x2
+                                                                                        (GHC.Types.:
+                                                                                           @ e
+                                                                                           x3
+                                                                                           (GHC.Types.:
+                                                                                              @ e
+                                                                                              x4
+                                                                                              (GHC.Types.:
+                                                                                                 @ e
+                                                                                                 x5
+                                                                                                 (GHC.Types.:
+                                                                                                    @ e
+                                                                                                    x6
+                                                                                                    (GHC.Types.:
+                                                                                                       @ e
+                                                                                                       x7
+                                                                                                       (GHC.Types.:
+                                                                                                          @ e
+                                                                                                          x8
+                                                                                                          (GHC.Types.:
+                                                                                                             @ e
+                                                                                                             x9
+                                                                                                             (GHC.Types.:
+                                                                                                                @ e
+                                                                                                                x10
+                                                                                                                (GHC.Types.:
+                                                                                                                   @ e
+                                                                                                                   x11
+                                                                                                                   (GHC.Types.:
+                                                                                                                      @ e
+                                                                                                                      x12
+                                                                                                                      (GHC.Types.:
+                                                                                                                         @ e
+                                                                                                                         x13
+                                                                                                                         (GHC.Types.:
+                                                                                                                            @ e
+                                                                                                                            x14
+                                                                                                                            (GHC.Types.[]
+                                                                                                                               @ e)))))))))))))))))
+                                                                      }
+                                                                  }
+                                                              }
+                                                          }
+                                                      }
+                                                  }
+                                              }
+                                          }
+                                      }
+                                  }
+                              }
+                          }
+                      }
+                  }
+              }
+          }
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.SetSliceElemsWrk
+        '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:0_$csetSliceElemsWrk
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 122, types: 130, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk
+  :: forall e. [e] -> [e] -> Maybe [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) (ds1 :: [e]) ->
+      case ds of {
+        [] ->
+          Data.Tensor.Static.impossible_notEnoughTensorElems @ (Maybe [e]);
+        : x xs1 ->
+          case xs1 of {
+            [] -> lvl15 @ e;
+            : x1 xs2 ->
+              case xs2 of {
+                [] -> lvl15 @ e;
+                : x2 xs3 ->
+                  case xs3 of {
+                    [] -> lvl15 @ e;
+                    : ipv ipv1 ->
+                      case ds1 of {
+                        [] -> GHC.Base.Nothing @ [e];
+                        : ipv2 ipv3 ->
+                          case ipv1 of {
+                            [] -> lvl15 @ e;
+                            : x3 xs4 ->
+                              case xs4 of {
+                                [] -> lvl15 @ e;
+                                : x4 xs5 ->
+                                  case xs5 of {
+                                    [] -> lvl15 @ e;
+                                    : x5 xs6 ->
+                                      case xs6 of {
+                                        [] -> lvl15 @ e;
+                                        : x6 xs7 ->
+                                          case xs7 of {
+                                            [] -> lvl15 @ e;
+                                            : x7 xs8 ->
+                                              case xs8 of {
+                                                [] -> lvl15 @ e;
+                                                : x8 xs9 ->
+                                                  case xs9 of {
+                                                    [] -> lvl15 @ e;
+                                                    : x9 xs10 ->
+                                                      case xs10 of {
+                                                        [] -> lvl15 @ e;
+                                                        : x10 xs11 ->
+                                                          case xs11 of {
+                                                            [] -> lvl15 @ e;
+                                                            : x11 xs12 ->
+                                                              case xs12 of {
+                                                                [] -> lvl15 @ e;
+                                                                : x12 xs13 ->
+                                                                  case xs13 of {
+                                                                    [] -> lvl15 @ e;
+                                                                    : x13 xs14 ->
+                                                                      case xs14 of {
+                                                                        [] -> lvl15 @ e;
+                                                                        : x14 xs15 ->
+                                                                          GHC.Base.Just
+                                                                            @ [e]
+                                                                            (GHC.Types.:
+                                                                               @ e
+                                                                               x
+                                                                               (GHC.Types.:
+                                                                                  @ e
+                                                                                  x1
+                                                                                  (GHC.Types.:
+                                                                                     @ e
+                                                                                     x2
+                                                                                     (GHC.Types.:
+                                                                                        @ e
+                                                                                        ipv2
+                                                                                        (GHC.Types.:
+                                                                                           @ e
+                                                                                           x3
+                                                                                           (GHC.Types.:
+                                                                                              @ e
+                                                                                              x4
+                                                                                              (GHC.Types.:
+                                                                                                 @ e
+                                                                                                 x5
+                                                                                                 (GHC.Types.:
+                                                                                                    @ e
+                                                                                                    x6
+                                                                                                    (GHC.Types.:
+                                                                                                       @ e
+                                                                                                       x7
+                                                                                                       (GHC.Types.:
+                                                                                                          @ e
+                                                                                                          x8
+                                                                                                          (GHC.Types.:
+                                                                                                             @ e
+                                                                                                             x9
+                                                                                                             (GHC.Types.:
+                                                                                                                @ e
+                                                                                                                x10
+                                                                                                                (GHC.Types.:
+                                                                                                                   @ e
+                                                                                                                   x11
+                                                                                                                   (GHC.Types.:
+                                                                                                                      @ e
+                                                                                                                      x12
+                                                                                                                      (GHC.Types.:
+                                                                                                                         @ e
+                                                                                                                         x13
+                                                                                                                         (GHC.Types.:
+                                                                                                                            @ e
+                                                                                                                            x14
+                                                                                                                            (GHC.Types.[]
+                                                                                                                               @ e)))))))))))))))))
+                                                                      }
+                                                                  }
+                                                              }
+                                                          }
+                                                      }
+                                                  }
+                                              }
+                                          }
+                                      }
+                                  }
+                              }
+                          }
+                      }
+                  }
+              }
+          }
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.SetSliceElemsWrk
+        '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+  :: Integer
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+  = 1
+
+-- RHS size: {terms: 12, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+  :: forall a. Num a => a
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith23))
+        (fromInteger
+           @ a
+           $dNum
+           CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith23)
+
+-- RHS size: {terms: 11, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+  :: forall a. Num a => a
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith23))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+           @ a $dNum)
+
+-- RHS size: {terms: 11, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith20
+  :: forall a. Num a => a
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith20
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith23))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+           @ a $dNum)
+
+-- RHS size: {terms: 8, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 -> GHC.Types.[] @ e
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk260
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk260
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk268
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk268
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk260
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk275
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk275
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk268
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk18
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk18
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk275
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk274
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk274
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk18
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk273
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk273
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk274
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk272
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk272
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk273
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk271
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk271
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk272
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk270
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk270
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk271
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk269
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk269
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk270
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith112
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith112
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk269
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk17
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk17
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk268
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk267
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk267
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk17
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk266
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk266
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk267
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk265
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk265
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk266
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk264
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk264
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk265
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk263
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk263
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk264
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk262
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk262
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk263
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk261
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk261
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk262
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith110
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith110
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk261
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk16
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk16
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk260
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk259
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk259
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk16
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk258
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk258
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk259
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk257
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk257
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk258
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk256
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk256
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk257
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk255
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk255
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk256
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk254
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk254
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk255
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk253
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk253
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk254
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk252
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk252
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk253
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith108
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith108
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk252
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith80
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith80
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 3, types: 132, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith78
+  :: ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.GetSliceElemsWrk
+         '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+      (Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.SetSliceElemsWrk
+         '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]))
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith78
+  = (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith80,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith79)
+
+-- RHS size: {terms: 3, types: 140, coercions: 8, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+  :: (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.GetSliceElemsWrk
+          '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+       (Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.SetSliceElemsWrk
+          '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+      ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat]))
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+  = (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith78,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$d~~
+     `cast` <Co:8>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk251
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk251
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk250
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk250
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk251
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk249
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk249
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk250
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk248
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk248
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk249
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk247
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk247
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk248
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk246
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk246
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk247
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk245
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk245
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk246
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk244
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk244
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk245
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk243
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk243
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk244
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith106
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith106
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk243
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+            @ e xs1
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith64
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith64
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 3, types: 132, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith62
+  :: ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.GetSliceElemsWrk
+         '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+      (Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.SetSliceElemsWrk
+         '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]))
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith62
+  = (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith64,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith63)
+
+-- RHS size: {terms: 3, types: 140, coercions: 8, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith61
+  :: (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.GetSliceElemsWrk
+          '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+       (Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.SetSliceElemsWrk
+          '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+      ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat]))
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith61
+  = (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith62,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$d~~
+     `cast` <Co:8>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+            @ e xs1
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith48
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith48
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 3, types: 132, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith46
+  :: ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.GetSliceElemsWrk
+         '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+      (Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.SetSliceElemsWrk
+         '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]))
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith46
+  = (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith48,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith47)
+
+-- RHS size: {terms: 3, types: 140, coercions: 8, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith45
+  :: (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.GetSliceElemsWrk
+          '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+       (Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.SetSliceElemsWrk
+          '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+      ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat]))
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith45
+  = (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith46,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$d~~
+     `cast` <Co:8>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk242
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk242
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk241
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk241
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk242
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk240
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk240
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk241
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk239
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk239
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk240
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk238
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk238
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk239
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk237
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk237
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk238
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk236
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk236
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk237
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk235
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk235
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk236
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk234
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk234
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk235
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith104
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith104
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk234
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+            @ e xs1
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 3, types: 132, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith26
+  :: ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.GetSliceElemsWrk
+         '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+      (Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.SetSliceElemsWrk
+         '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]))
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith26
+  = (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith28,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith27)
+
+-- RHS size: {terms: 3, types: 140, coercions: 8, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+  :: (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.GetSliceElemsWrk
+          '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+       (Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.SetSliceElemsWrk
+          '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+      ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat]))
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+  = (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith26,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$d~~
+     `cast` <Co:8>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk233
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk233
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk232
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk232
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk233
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk231
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk231
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk232
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk230
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk230
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk231
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk229
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk229
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk230
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk228
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk228
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk229
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk227
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk227
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk228
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk226
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk226
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk227
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk225
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk225
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk226
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith102
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith102
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk225
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk224
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk224
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk223
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk223
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk224
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk222
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk222
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk223
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk221
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk221
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk222
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk220
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk220
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk221
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk219
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk219
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk220
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk218
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk218
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk219
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk217
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk217
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk218
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk216
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk216
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk217
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith100
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith100
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk216
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk215
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk215
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk214
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk214
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk215
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk213
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk213
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk214
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk212
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk212
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk213
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk211
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk211
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk212
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk210
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk210
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk211
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk209
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk209
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk210
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk208
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk208
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk209
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk207
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk207
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk208
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith98
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith98
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk207
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk206
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk206
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk205
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk205
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk206
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk204
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk204
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk205
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk203
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk203
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk204
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk202
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk202
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk203
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk201
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk201
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk202
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk200
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk200
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk201
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk199
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk199
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk200
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk198
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk198
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk199
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith96
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith96
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk198
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk197
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk197
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk196
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk196
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk197
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk195
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk195
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk196
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk194
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk194
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk195
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk193
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk193
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk194
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk192
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk192
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk193
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk191
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk191
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk192
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk190
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk190
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk191
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk189
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk189
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk190
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith94
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith94
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk189
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk188
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk188
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk187
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk187
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk188
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk186
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk186
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk187
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk185
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk185
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk186
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk184
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk184
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk185
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk183
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk183
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk184
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk182
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk182
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk183
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk181
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk181
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk182
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk180
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk180
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk181
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith92
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith92
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk180
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk179
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk179
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk178
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk178
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk179
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk177
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk177
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk178
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk176
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk176
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk177
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk175
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk175
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk176
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk174
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk174
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk175
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk173
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk173
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk174
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk172
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk172
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk173
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk171
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk171
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk172
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith90
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith90
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk171
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk170
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk170
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk169
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk169
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk170
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk168
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk168
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk169
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk167
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk167
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk168
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk166
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk166
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk167
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk165
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk165
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk166
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk164
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk164
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk165
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk163
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk163
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk164
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk162
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk162
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk163
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith88
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith88
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk162
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk161
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk161
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk160
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk160
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk161
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk159
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk159
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk160
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk158
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk158
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk159
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk157
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk157
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk158
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk156
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk156
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk157
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk155
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk155
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk156
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk154
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk154
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk155
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk153
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk153
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk154
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith86
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith86
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk153
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith2
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith2
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith4
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith4
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith2
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith6
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith6
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith4
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith8
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith8
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith6
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith10
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith10
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith8
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,327, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith12
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith12
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9327>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith10
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,327, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith14
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith14
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9327>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith12
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,307, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith16
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith16
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9307>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith14
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith16
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 5, types: 271, coercions: 7, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+  :: (Determinant 3 Float,
+      (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.GetSliceElemsWrk
+           '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+        (Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.SetSliceElemsWrk
+           '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+       ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat])),
+      (Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Data.Matrix.Static.Sign 3)
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+  = (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+     `cast` <Co:4>,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith25,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith24,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith20
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk152
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk152
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk151
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk151
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk152
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk150
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk150
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk151
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk149
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk149
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk150
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk148
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk148
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk149
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk147
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk147
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk148
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk146
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk146
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk147
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk145
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk145
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk146
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk144
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk144
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk145
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith84
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+          'False])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith84
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk144
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 10, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 -> GHC.Types.: @ e x (GHC.Types.[] @ e)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith30
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith30
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith32
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith32
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith30
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith32
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith34
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith34
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith36
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith36
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith34
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith36
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,337, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith38
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith38
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9337>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,327, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith40
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith40
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9327>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith38
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,307, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9307>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith40
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith44
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith44
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 5, types: 271, coercions: 7, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith43
+  :: (Determinant 3 Float,
+      (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.GetSliceElemsWrk
+           '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+        (Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.SetSliceElemsWrk
+           '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+       ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat])),
+      (Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Data.Matrix.Static.Sign 2)
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith43
+  = (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+     `cast` <Co:4>,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith45,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith44,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith50
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith50
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith50
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith52
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith52
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith52
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith54
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith54
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,337, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith55
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith55
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9337>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith54
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,337, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith56
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith56
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9337>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith55
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,307, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith57
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith57
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9307>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith56
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith60
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith60
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith57
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 5, types: 271, coercions: 7, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith59
+  :: (Determinant 3 Float,
+      (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.GetSliceElemsWrk
+           '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+        (Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.SetSliceElemsWrk
+           '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+       ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat])),
+      (Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Data.Matrix.Static.Sign 1)
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith59
+  = (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+     `cast` <Co:4>,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith61,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith60,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,269, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith65
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith65
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9269>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,269, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith66
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith66
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9269>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith65
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,267, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith67
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith67
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9267>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith66
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,269, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith68
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith68
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9269>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith67
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,269, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith69
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith69
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9269>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith68
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,267, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith70
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith70
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9267>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith69
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,267, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith71
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith71
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9267>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith70
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,267, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith72
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith72
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9267>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith71
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,265, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9265>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith72
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith76
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith76
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 5, types: 271, coercions: 7, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+  :: (Determinant 3 Float,
+      (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.GetSliceElemsWrk
+           '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+        (Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.SetSliceElemsWrk
+           '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+       ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat])),
+      (Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Data.Matrix.Static.Sign 0)
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+  = (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+     `cast` <Co:4>,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith77,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith76,
+     Data.Matrix.Static.$fSign0_$csign `cast` <Co:3>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk143
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk143
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk142
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk142
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk143
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk141
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk141
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk142
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk140
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk140
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk141
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk139
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk139
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk140
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk138
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk138
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk139
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk137
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk137
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk138
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk136
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk136
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk137
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk135
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk135
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk136
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 88, coercions: 79, joins: 0/0}
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith82
+  :: (Data.Tensor.Static.IsTensor '[5, 5] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'True])
+CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith82
+  = (TensorInstances.$fIsTensor:Float7,
+     CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk135
+     `cast` <Co:79>)
+
+-- RHS size: {terms: 329,
+              types: 10,863,
+              coercions: 377,274,
+              joins: 0/18}
+cofactor_ :: Matrix 5 5 Float -> Float
+cofactor_
+  = \ (m :: Matrix 5 5 Float) ->
+      let {
+        $wf
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.MinorMatrixGoSym4 0 0 5 Float)
+               x1 =>
+             Float
+        $wf
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.MinorMatrixGoSym4 0 0 5 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[5, 5])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[5, 5]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[5, 5] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index1 x1)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index1 x1)]
+                                       '[1, 1]
+                                       '[5, 5]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 5))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[5, 5] (1 GHC.TypeNats.<=? 5)))))
+                            (w `cast` <Co:141>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[5, 5])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[5, 5]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[5, 5] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index1 x1)]
+                                    '[1, 1]
+                                    '[5, 5]))
+                            (w `cast` <Co:18>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[5, 5] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[5, 5] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index0 x1),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index1 x1)]
+                              '[1, 1]
+                              '[5, 5]))
+                      (w `cast` <Co:18>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[5, 5])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[5, 5] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[5, 5] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index0 x1),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index1 x1)]
+                               '[1, 1]
+                               '[5, 5]))
+                       (w `cast` <Co:18>))
+                    `cast` <Co:32>)
+                     @ Float (Data.Tensor.Static.toList @ '[5, 5] @ Float $dIsTensor1 m)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x ds1 -> x
+              }
+              }
+              }
+              } } in
+      let {
+        m1
+          :: Data.Tensor.Static.Tensor
+               '[5 GHC.TypeNats.- 1, 5 GHC.TypeNats.- 1] Float
+        m1
+          = case $wf
+                   @ '[0, 0]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith112
+                    `cast` <Co:17103>)
+            of
+            { GHC.Types.F# dt1 ->
+            case $wf
+                   @ '[0, 1]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith110
+                    `cast` <Co:17105>)
+            of
+            { GHC.Types.F# dt3 ->
+            case $wf
+                   @ '[0, 2]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith108
+                    `cast` <Co:17105>)
+            of
+            { GHC.Types.F# dt5 ->
+            case $wf
+                   @ '[0, 3]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith106
+                    `cast` <Co:17105>)
+            of
+            { GHC.Types.F# dt7 ->
+            case $wf
+                   @ '[1, 0]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith104
+                    `cast` <Co:17105>)
+            of
+            { GHC.Types.F# dt9 ->
+            case $wf
+                   @ '[1, 1]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith102
+                    `cast` <Co:17107>)
+            of
+            { GHC.Types.F# dt11 ->
+            case $wf
+                   @ '[1, 2]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith100
+                    `cast` <Co:17107>)
+            of
+            { GHC.Types.F# dt13 ->
+            case $wf
+                   @ '[1, 3]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith98
+                    `cast` <Co:17107>)
+            of
+            { GHC.Types.F# dt15 ->
+            case $wf
+                   @ '[2, 0]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith96
+                    `cast` <Co:17105>)
+            of
+            { GHC.Types.F# dt17 ->
+            case $wf
+                   @ '[2, 1]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith94
+                    `cast` <Co:17107>)
+            of
+            { GHC.Types.F# dt19 ->
+            case $wf
+                   @ '[2, 2]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith92
+                    `cast` <Co:17107>)
+            of
+            { GHC.Types.F# dt21 ->
+            case $wf
+                   @ '[2, 3]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith90
+                    `cast` <Co:17107>)
+            of
+            { GHC.Types.F# dt23 ->
+            case $wf
+                   @ '[3, 0]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith88
+                    `cast` <Co:17105>)
+            of
+            { GHC.Types.F# dt25 ->
+            case $wf
+                   @ '[3, 1]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith86
+                    `cast` <Co:17107>)
+            of
+            { GHC.Types.F# dt27 ->
+            case $wf
+                   @ '[3, 2]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith84
+                    `cast` <Co:17107>)
+            of
+            { GHC.Types.F# dt29 ->
+            case $wf
+                   @ '[3, 3]
+                   (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith82
+                    `cast` <Co:17107>)
+            of
+            { GHC.Types.F# dt31 ->
+            (TensorInstances.Tensor'4'4'Float
+               dt1
+               dt3
+               dt5
+               dt7
+               dt9
+               dt11
+               dt13
+               dt15
+               dt17
+               dt19
+               dt21
+               dt23
+               dt25
+               dt27
+               dt29
+               dt31)
+            `cast` <Co:19>
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            } } in
+      let {
+        lvl19
+          :: forall (x1 :: GHC.Types.Nat) (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+               index =>
+             Data.Proxy.Proxy index -> Float
+        lvl19
+          = \ (@ (x1 :: GHC.Types.Nat))
+              (@ (index :: [GHC.Types.Nat]))
+              (irred1
+                 :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                      index)
+              _ ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        x1 (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           x1 (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (irred1 `cast` <Co:141>)))
+                      `cast` <Co:12>)
+              of cobox15
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        x1 (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (irred1 `cast` <Co:18>)))
+                      `cast` <Co:12>)
+              of cobox16
+              { __DEFAULT ->
+              let {
+                $dIsTensor2 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor2
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  x1 (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (irred1 `cast` <Co:18>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor2)
+                      `cast` <Co:12>)
+              of cobox18
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   x1 (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (irred1 `cast` <Co:18>))
+                    `cast` <Co:32>)
+                     @ Float
+                     (Data.Tensor.Static.toList
+                        @ '[4, 4] @ Float $dIsTensor2 (m1 `cast` <Co:14>))
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x ds1 -> x
+              }
+              }
+              }
+              } } in
+      let {
+        $wf1
+          :: forall (x1 :: GHC.Types.Nat).
+             Type.List.MkCtx
+               GHC.Types.Nat
+               (Data.Singletons.TyFun GHC.Types.Nat Constraint -> *)
+               (Data.Matrix.Static.DeterminantGoSym2 4 Float)
+               x1 =>
+             GHC.Prim.Float#
+        $wf1
+          = \ (@ (x1 :: GHC.Types.Nat))
+              (w :: Type.List.MkCtx
+                      GHC.Types.Nat
+                      (Data.Singletons.TyFun GHC.Types.Nat Constraint -> *)
+                      (Data.Matrix.Static.DeterminantGoSym2 4 Float)
+                      x1) ->
+              let {
+                $d(%,%)1
+                  :: (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+                        Data.Tensor.Static.IsTensor
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Type.Bool.If
+                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                          Float,
+                        Data.Tensor.Static.GetSliceElemsWrk
+                          (Data.Tensor.Static.ElemsInSlice''
+                             '[0]
+                             (Data.Type.Bool.If
+                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                             (Data.Tensor.Static.SliceEndIndex
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                                '[4])
+                             : Data.Tensor.Static.ElemsInSlice'
+                                 (0 : Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[x1]
+                                        (TypeError ...))
+                                 (0 : Data.Tensor.Static.SliceEndIndex
+                                        (Data.Type.Bool.If
+                                           (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                           '[x1]
+                                           (TypeError ...))
+                                        (Data.Type.Bool.If
+                                           (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                           '[1]
+                                           (TypeError ...))
+                                        '[4])
+                                 (Data.Tensor.Static.Sequence''
+                                    0
+                                    (Data.Tensor.Static.Sequence'
+                                       (Data.Tensor.Static.NatsFromTo'
+                                          1
+                                          (4 GHC.TypeNats.- 1)
+                                          (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                       '['[]])
+                                  Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                          (Data.Tensor.Static.NatsFromTo'
+                                                             1
+                                                             (4 GHC.TypeNats.- 1)
+                                                             (1
+                                                              GHC.TypeNats.<=? (4
+                                                                                GHC.TypeNats.- 1)))
+                                                          ('[0]
+                                                             : Data.Tensor.Static.Sequence'
+                                                                 (Data.Tensor.Static.NatsFromTo'
+                                                                    1
+                                                                    (4 GHC.TypeNats.- 1)
+                                                                    (1
+                                                                     GHC.TypeNats.<=? (4
+                                                                                       GHC.TypeNats.- 1)))
+                                                                 '['[]])))),
+                       (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                        Data.Tensor.Static.IsTensor
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Type.Bool.If
+                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                          Float,
+                        Data.Tensor.Static.SetSliceElemsWrk
+                          (Data.Tensor.Static.ElemsInSlice''
+                             '[0]
+                             (Data.Type.Bool.If
+                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                             (Data.Tensor.Static.SliceEndIndex
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                                '[4])
+                             : Data.Tensor.Static.ElemsInSlice'
+                                 (0 : Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[x1]
+                                        (TypeError ...))
+                                 (0 : Data.Tensor.Static.SliceEndIndex
+                                        (Data.Type.Bool.If
+                                           (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                           '[x1]
+                                           (TypeError ...))
+                                        (Data.Type.Bool.If
+                                           (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                           '[1]
+                                           (TypeError ...))
+                                        '[4])
+                                 (Data.Tensor.Static.Sequence''
+                                    0
+                                    (Data.Tensor.Static.Sequence'
+                                       (Data.Tensor.Static.NatsFromTo'
+                                          1
+                                          (4 GHC.TypeNats.- 1)
+                                          (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                       '['[]])
+                                  Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                          (Data.Tensor.Static.NatsFromTo'
+                                                             1
+                                                             (4 GHC.TypeNats.- 1)
+                                                             (1
+                                                              GHC.TypeNats.<=? (4
+                                                                                GHC.TypeNats.- 1)))
+                                                          ('[0]
+                                                             : Data.Tensor.Static.Sequence'
+                                                                 (Data.Tensor.Static.NatsFromTo'
+                                                                    1
+                                                                    (4 GHC.TypeNats.- 1)
+                                                                    (1
+                                                                     GHC.TypeNats.<=? (4
+                                                                                       GHC.TypeNats.- 1)))
+                                                                 '['[]]))))),
+                      (Data.Tensor.Static.NormalizeDims
+                         (Data.Type.Bool.If
+                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                            '[1]
+                            (TypeError ...)) :: [GHC.Types.Nat])
+                      ~
+                      ('[] :: [GHC.Types.Nat]))
+                $d(%,%)1
+                  = GHC.Classes.$p2(%,,,%)
+                      @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                      @ (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+                           Data.Tensor.Static.IsTensor
+                             (Data.Tensor.Static.NormalizeDims
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                             Float,
+                           Data.Tensor.Static.GetSliceElemsWrk
+                             (Data.Tensor.Static.ElemsInSlice''
+                                '[0]
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                                (Data.Tensor.Static.SliceEndIndex
+                                   (Data.Type.Bool.If
+                                      (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                      '[x1]
+                                      (TypeError ...))
+                                   (Data.Type.Bool.If
+                                      (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                      '[1]
+                                      (TypeError ...))
+                                   '[4])
+                                : Data.Tensor.Static.ElemsInSlice'
+                                    (0 : Data.Type.Bool.If
+                                           (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                           '[x1]
+                                           (TypeError ...))
+                                    (0 : Data.Tensor.Static.SliceEndIndex
+                                           (Data.Type.Bool.If
+                                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                              '[x1]
+                                              (TypeError ...))
+                                           (Data.Type.Bool.If
+                                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                              '[1]
+                                              (TypeError ...))
+                                           '[4])
+                                    (Data.Tensor.Static.Sequence''
+                                       0
+                                       (Data.Tensor.Static.Sequence'
+                                          (Data.Tensor.Static.NatsFromTo'
+                                             1
+                                             (4 GHC.TypeNats.- 1)
+                                             (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                          '['[]])
+                                     Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                             (Data.Tensor.Static.NatsFromTo'
+                                                                1
+                                                                (4 GHC.TypeNats.- 1)
+                                                                (1
+                                                                 GHC.TypeNats.<=? (4
+                                                                                   GHC.TypeNats.- 1)))
+                                                             ('[0]
+                                                                : Data.Tensor.Static.Sequence'
+                                                                    (Data.Tensor.Static.NatsFromTo'
+                                                                       1
+                                                                       (4 GHC.TypeNats.- 1)
+                                                                       (1
+                                                                        GHC.TypeNats.<=? (4
+                                                                                          GHC.TypeNats.- 1)))
+                                                                    '['[]])))),
+                          (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                           Data.Tensor.Static.IsTensor
+                             (Data.Tensor.Static.NormalizeDims
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                             Float,
+                           Data.Tensor.Static.SetSliceElemsWrk
+                             (Data.Tensor.Static.ElemsInSlice''
+                                '[0]
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                                (Data.Tensor.Static.SliceEndIndex
+                                   (Data.Type.Bool.If
+                                      (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                      '[x1]
+                                      (TypeError ...))
+                                   (Data.Type.Bool.If
+                                      (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                      '[1]
+                                      (TypeError ...))
+                                   '[4])
+                                : Data.Tensor.Static.ElemsInSlice'
+                                    (0 : Data.Type.Bool.If
+                                           (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                           '[x1]
+                                           (TypeError ...))
+                                    (0 : Data.Tensor.Static.SliceEndIndex
+                                           (Data.Type.Bool.If
+                                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                              '[x1]
+                                              (TypeError ...))
+                                           (Data.Type.Bool.If
+                                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                              '[1]
+                                              (TypeError ...))
+                                           '[4])
+                                    (Data.Tensor.Static.Sequence''
+                                       0
+                                       (Data.Tensor.Static.Sequence'
+                                          (Data.Tensor.Static.NatsFromTo'
+                                             1
+                                             (4 GHC.TypeNats.- 1)
+                                             (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                          '['[]])
+                                     Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                             (Data.Tensor.Static.NatsFromTo'
+                                                                1
+                                                                (4 GHC.TypeNats.- 1)
+                                                                (1
+                                                                 GHC.TypeNats.<=? (4
+                                                                                   GHC.TypeNats.- 1)))
+                                                             ('[0]
+                                                                : Data.Tensor.Static.Sequence'
+                                                                    (Data.Tensor.Static.NatsFromTo'
+                                                                       1
+                                                                       (4 GHC.TypeNats.- 1)
+                                                                       (1
+                                                                        GHC.TypeNats.<=? (4
+                                                                                          GHC.TypeNats.- 1)))
+                                                                    '['[]]))))),
+                         (Data.Tensor.Static.NormalizeDims
+                            (Data.Type.Bool.If
+                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                               '[1]
+                               (TypeError ...)) :: [GHC.Types.Nat])
+                         ~
+                         ('[] :: [GHC.Types.Nat]))
+                      @ (Data.Tensor.Static.IsTensor
+                           '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float,
+                         Type.List.DemoteWith
+                           [GHC.Types.Nat]
+                           ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                           (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                           (Data.Tensor.Static.Sequence
+                              (Data.Tensor.Static.IndexesRanges'
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                                 (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))))
+                      @ (Data.Matrix.Static.Sign x1)
+                      (w `cast` <Co:5736>) } in
+              let {
+                $d(%,%)2
+                  :: ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+                       Data.Tensor.Static.IsTensor
+                         (Data.Tensor.Static.NormalizeDims
+                            (Data.Type.Bool.If
+                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                         Float,
+                       Data.Tensor.Static.GetSliceElemsWrk
+                         (Data.Tensor.Static.ElemsInSlice''
+                            '[0]
+                            (Data.Type.Bool.If
+                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                            (Data.Tensor.Static.SliceEndIndex
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                               '[4])
+                            : Data.Tensor.Static.ElemsInSlice'
+                                (0 : Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[x1]
+                                       (TypeError ...))
+                                (0 : Data.Tensor.Static.SliceEndIndex
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[1]
+                                          (TypeError ...))
+                                       '[4])
+                                (Data.Tensor.Static.Sequence''
+                                   0
+                                   (Data.Tensor.Static.Sequence'
+                                      (Data.Tensor.Static.NatsFromTo'
+                                         1
+                                         (4 GHC.TypeNats.- 1)
+                                         (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                      '['[]])
+                                 Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                         (Data.Tensor.Static.NatsFromTo'
+                                                            1
+                                                            (4 GHC.TypeNats.- 1)
+                                                            (1
+                                                             GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                                         ('[0]
+                                                            : Data.Tensor.Static.Sequence'
+                                                                (Data.Tensor.Static.NatsFromTo'
+                                                                   1
+                                                                   (4 GHC.TypeNats.- 1)
+                                                                   (1
+                                                                    GHC.TypeNats.<=? (4
+                                                                                      GHC.TypeNats.- 1)))
+                                                                '['[]])))),
+                      (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                       Data.Tensor.Static.IsTensor
+                         (Data.Tensor.Static.NormalizeDims
+                            (Data.Type.Bool.If
+                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                         Float,
+                       Data.Tensor.Static.SetSliceElemsWrk
+                         (Data.Tensor.Static.ElemsInSlice''
+                            '[0]
+                            (Data.Type.Bool.If
+                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                            (Data.Tensor.Static.SliceEndIndex
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                               '[4])
+                            : Data.Tensor.Static.ElemsInSlice'
+                                (0 : Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[x1]
+                                       (TypeError ...))
+                                (0 : Data.Tensor.Static.SliceEndIndex
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[1]
+                                          (TypeError ...))
+                                       '[4])
+                                (Data.Tensor.Static.Sequence''
+                                   0
+                                   (Data.Tensor.Static.Sequence'
+                                      (Data.Tensor.Static.NatsFromTo'
+                                         1
+                                         (4 GHC.TypeNats.- 1)
+                                         (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                      '['[]])
+                                 Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                         (Data.Tensor.Static.NatsFromTo'
+                                                            1
+                                                            (4 GHC.TypeNats.- 1)
+                                                            (1
+                                                             GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                                         ('[0]
+                                                            : Data.Tensor.Static.Sequence'
+                                                                (Data.Tensor.Static.NatsFromTo'
+                                                                   1
+                                                                   (4 GHC.TypeNats.- 1)
+                                                                   (1
+                                                                    GHC.TypeNats.<=? (4
+                                                                                      GHC.TypeNats.- 1)))
+                                                                '['[]])))))
+                $d(%,%)2
+                  = GHC.Classes.$p1(%,%)
+                      @ ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+                          Data.Tensor.Static.IsTensor
+                            (Data.Tensor.Static.NormalizeDims
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                            Float,
+                          Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice''
+                               '[0]
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                               (Data.Tensor.Static.SliceEndIndex
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[x1]
+                                     (TypeError ...))
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[1]
+                                     (TypeError ...))
+                                  '[4])
+                               : Data.Tensor.Static.ElemsInSlice'
+                                   (0 : Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                   (0 : Data.Tensor.Static.SliceEndIndex
+                                          (Data.Type.Bool.If
+                                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                             '[x1]
+                                             (TypeError ...))
+                                          (Data.Type.Bool.If
+                                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                             '[1]
+                                             (TypeError ...))
+                                          '[4])
+                                   (Data.Tensor.Static.Sequence''
+                                      0
+                                      (Data.Tensor.Static.Sequence'
+                                         (Data.Tensor.Static.NatsFromTo'
+                                            1
+                                            (4 GHC.TypeNats.- 1)
+                                            (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                         '['[]])
+                                    Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                            (Data.Tensor.Static.NatsFromTo'
+                                                               1
+                                                               (4 GHC.TypeNats.- 1)
+                                                               (1
+                                                                GHC.TypeNats.<=? (4
+                                                                                  GHC.TypeNats.- 1)))
+                                                            ('[0]
+                                                               : Data.Tensor.Static.Sequence'
+                                                                   (Data.Tensor.Static.NatsFromTo'
+                                                                      1
+                                                                      (4 GHC.TypeNats.- 1)
+                                                                      (1
+                                                                       GHC.TypeNats.<=? (4
+                                                                                         GHC.TypeNats.- 1)))
+                                                                   '['[]])))),
+                         (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                          Data.Tensor.Static.IsTensor
+                            (Data.Tensor.Static.NormalizeDims
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                            Float,
+                          Data.Tensor.Static.SetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice''
+                               '[0]
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                               (Data.Tensor.Static.SliceEndIndex
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[x1]
+                                     (TypeError ...))
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[1]
+                                     (TypeError ...))
+                                  '[4])
+                               : Data.Tensor.Static.ElemsInSlice'
+                                   (0 : Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                   (0 : Data.Tensor.Static.SliceEndIndex
+                                          (Data.Type.Bool.If
+                                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                             '[x1]
+                                             (TypeError ...))
+                                          (Data.Type.Bool.If
+                                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                             '[1]
+                                             (TypeError ...))
+                                          '[4])
+                                   (Data.Tensor.Static.Sequence''
+                                      0
+                                      (Data.Tensor.Static.Sequence'
+                                         (Data.Tensor.Static.NatsFromTo'
+                                            1
+                                            (4 GHC.TypeNats.- 1)
+                                            (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                         '['[]])
+                                    Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                            (Data.Tensor.Static.NatsFromTo'
+                                                               1
+                                                               (4 GHC.TypeNats.- 1)
+                                                               (1
+                                                                GHC.TypeNats.<=? (4
+                                                                                  GHC.TypeNats.- 1)))
+                                                            ('[0]
+                                                               : Data.Tensor.Static.Sequence'
+                                                                   (Data.Tensor.Static.NatsFromTo'
+                                                                      1
+                                                                      (4 GHC.TypeNats.- 1)
+                                                                      (1
+                                                                       GHC.TypeNats.<=? (4
+                                                                                         GHC.TypeNats.- 1)))
+                                                                   '['[]])))))
+                      @ ((Data.Tensor.Static.NormalizeDims
+                            (Data.Type.Bool.If
+                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                               '[1]
+                               (TypeError ...)) :: [GHC.Types.Nat])
+                         ~
+                         ('[] :: [GHC.Types.Nat]))
+                      $d(%,%)1 } in
+              let {
+                $d(%,,%)
+                  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                      Data.Tensor.Static.IsTensor
+                        (Data.Tensor.Static.NormalizeDims
+                           (Data.Type.Bool.If
+                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                        Float,
+                      Data.Tensor.Static.GetSliceElemsWrk
+                        (Data.Tensor.Static.ElemsInSlice''
+                           '[0]
+                           (Data.Type.Bool.If
+                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                           (Data.Tensor.Static.SliceEndIndex
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                              '[4])
+                           : Data.Tensor.Static.ElemsInSlice'
+                               (0 : Data.Type.Bool.If
+                                      (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                      '[x1]
+                                      (TypeError ...))
+                               (0 : Data.Tensor.Static.SliceEndIndex
+                                      (Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[x1]
+                                         (TypeError ...))
+                                      (Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[1]
+                                         (TypeError ...))
+                                      '[4])
+                               (Data.Tensor.Static.Sequence''
+                                  0
+                                  (Data.Tensor.Static.Sequence'
+                                     (Data.Tensor.Static.NatsFromTo'
+                                        1
+                                        (4 GHC.TypeNats.- 1)
+                                        (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                     '['[]])
+                                Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                        (Data.Tensor.Static.NatsFromTo'
+                                                           1
+                                                           (4 GHC.TypeNats.- 1)
+                                                           (1
+                                                            GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                                        ('[0]
+                                                           : Data.Tensor.Static.Sequence'
+                                                               (Data.Tensor.Static.NatsFromTo'
+                                                                  1
+                                                                  (4 GHC.TypeNats.- 1)
+                                                                  (1
+                                                                   GHC.TypeNats.<=? (4
+                                                                                     GHC.TypeNats.- 1)))
+                                                               '['[]]))))
+                $d(%,,%)
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                         Data.Tensor.Static.IsTensor
+                           (Data.Tensor.Static.NormalizeDims
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                           Float,
+                         Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice''
+                              '[0]
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                              (Data.Tensor.Static.SliceEndIndex
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                    '[x1]
+                                    (TypeError ...))
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                                 '[4])
+                              : Data.Tensor.Static.ElemsInSlice'
+                                  (0 : Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[x1]
+                                         (TypeError ...))
+                                  (0 : Data.Tensor.Static.SliceEndIndex
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[x1]
+                                            (TypeError ...))
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[1]
+                                            (TypeError ...))
+                                         '[4])
+                                  (Data.Tensor.Static.Sequence''
+                                     0
+                                     (Data.Tensor.Static.Sequence'
+                                        (Data.Tensor.Static.NatsFromTo'
+                                           1
+                                           (4 GHC.TypeNats.- 1)
+                                           (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                        '['[]])
+                                   Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                           (Data.Tensor.Static.NatsFromTo'
+                                                              1
+                                                              (4 GHC.TypeNats.- 1)
+                                                              (1
+                                                               GHC.TypeNats.<=? (4
+                                                                                 GHC.TypeNats.- 1)))
+                                                           ('[0]
+                                                              : Data.Tensor.Static.Sequence'
+                                                                  (Data.Tensor.Static.NatsFromTo'
+                                                                     1
+                                                                     (4 GHC.TypeNats.- 1)
+                                                                     (1
+                                                                      GHC.TypeNats.<=? (4
+                                                                                        GHC.TypeNats.- 1)))
+                                                                  '['[]]))))
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                         Data.Tensor.Static.IsTensor
+                           (Data.Tensor.Static.NormalizeDims
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                           Float,
+                         Data.Tensor.Static.SetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice''
+                              '[0]
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                              (Data.Tensor.Static.SliceEndIndex
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                    '[x1]
+                                    (TypeError ...))
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                                 '[4])
+                              : Data.Tensor.Static.ElemsInSlice'
+                                  (0 : Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[x1]
+                                         (TypeError ...))
+                                  (0 : Data.Tensor.Static.SliceEndIndex
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[x1]
+                                            (TypeError ...))
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[1]
+                                            (TypeError ...))
+                                         '[4])
+                                  (Data.Tensor.Static.Sequence''
+                                     0
+                                     (Data.Tensor.Static.Sequence'
+                                        (Data.Tensor.Static.NatsFromTo'
+                                           1
+                                           (4 GHC.TypeNats.- 1)
+                                           (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                        '['[]])
+                                   Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                           (Data.Tensor.Static.NatsFromTo'
+                                                              1
+                                                              (4 GHC.TypeNats.- 1)
+                                                              (1
+                                                               GHC.TypeNats.<=? (4
+                                                                                 GHC.TypeNats.- 1)))
+                                                           ('[0]
+                                                              : Data.Tensor.Static.Sequence'
+                                                                  (Data.Tensor.Static.NatsFromTo'
+                                                                     1
+                                                                     (4 GHC.TypeNats.- 1)
+                                                                     (1
+                                                                      GHC.TypeNats.<=? (4
+                                                                                        GHC.TypeNats.- 1)))
+                                                                  '['[]]))))
+                      $d(%,%)2 } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[1]
+                                       (TypeError ...)))
+                                 Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice''
+                                    '[0]
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[x1]
+                                       (TypeError ...))
+                                    (Data.Tensor.Static.SliceEndIndex
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[1]
+                                          (TypeError ...))
+                                       '[4])
+                                    : Data.Tensor.Static.ElemsInSlice'
+                                        (0 : Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[x1]
+                                               (TypeError ...))
+                                        (0 : Data.Tensor.Static.SliceEndIndex
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[x1]
+                                                  (TypeError ...))
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[1]
+                                                  (TypeError ...))
+                                               '[4])
+                                        (Data.Tensor.Static.Sequence''
+                                           0
+                                           (Data.Tensor.Static.Sequence'
+                                              (Data.Tensor.Static.NatsFromTo'
+                                                 1
+                                                 (4 GHC.TypeNats.- 1)
+                                                 (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                              '['[]])
+                                         Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                                 (Data.Tensor.Static.NatsFromTo'
+                                                                    1
+                                                                    (4 GHC.TypeNats.- 1)
+                                                                    (1
+                                                                     GHC.TypeNats.<=? (4
+                                                                                       GHC.TypeNats.- 1)))
+                                                                 ('[0]
+                                                                    : Data.Tensor.Static.Sequence'
+                                                                        (Data.Tensor.Static.NatsFromTo'
+                                                                           1
+                                                                           (4 GHC.TypeNats.- 1)
+                                                                           (1
+                                                                            GHC.TypeNats.<=? (4
+                                                                                              GHC.TypeNats.- 1)))
+                                                                        '['[]]))))
+                            $d(%,,%)))
+                      `cast` <Co:12>)
+              of cobox1
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Type.Bool.If
+                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))))
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ (Data.Tensor.Static.NormalizeDims
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                         @ Float
+                         (GHC.Classes.$p2(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[1]
+                                       (TypeError ...)))
+                                 Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice''
+                                    '[0]
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[x1]
+                                       (TypeError ...))
+                                    (Data.Tensor.Static.SliceEndIndex
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[1]
+                                          (TypeError ...))
+                                       '[4])
+                                    : Data.Tensor.Static.ElemsInSlice'
+                                        (0 : Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[x1]
+                                               (TypeError ...))
+                                        (0 : Data.Tensor.Static.SliceEndIndex
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[x1]
+                                                  (TypeError ...))
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[1]
+                                                  (TypeError ...))
+                                               '[4])
+                                        (Data.Tensor.Static.Sequence''
+                                           0
+                                           (Data.Tensor.Static.Sequence'
+                                              (Data.Tensor.Static.NatsFromTo'
+                                                 1
+                                                 (4 GHC.TypeNats.- 1)
+                                                 (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                              '['[]])
+                                         Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                                 (Data.Tensor.Static.NatsFromTo'
+                                                                    1
+                                                                    (4 GHC.TypeNats.- 1)
+                                                                    (1
+                                                                     GHC.TypeNats.<=? (4
+                                                                                       GHC.TypeNats.- 1)))
+                                                                 ('[0]
+                                                                    : Data.Tensor.Static.Sequence'
+                                                                        (Data.Tensor.Static.NatsFromTo'
+                                                                           1
+                                                                           (4 GHC.TypeNats.- 1)
+                                                                           (1
+                                                                            GHC.TypeNats.<=? (4
+                                                                                              GHC.TypeNats.- 1)))
+                                                                        '['[]]))))
+                            $d(%,,%)))
+                      `cast` <Co:39>)
+              of cobox2
+              { __DEFAULT ->
+              let {
+                $d(%,,%)1
+                  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                      Data.Tensor.Static.IsTensor
+                        (Data.Tensor.Static.NormalizeDims
+                           (Data.Type.Bool.If
+                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                        Float,
+                      Data.Tensor.Static.SetSliceElemsWrk
+                        (Data.Tensor.Static.ElemsInSlice''
+                           '[0]
+                           (Data.Type.Bool.If
+                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                           (Data.Tensor.Static.SliceEndIndex
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                              '[4])
+                           : Data.Tensor.Static.ElemsInSlice'
+                               (0 : Data.Type.Bool.If
+                                      (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                      '[x1]
+                                      (TypeError ...))
+                               (0 : Data.Tensor.Static.SliceEndIndex
+                                      (Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[x1]
+                                         (TypeError ...))
+                                      (Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[1]
+                                         (TypeError ...))
+                                      '[4])
+                               (Data.Tensor.Static.Sequence''
+                                  0
+                                  (Data.Tensor.Static.Sequence'
+                                     (Data.Tensor.Static.NatsFromTo'
+                                        1
+                                        (4 GHC.TypeNats.- 1)
+                                        (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                     '['[]])
+                                Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                        (Data.Tensor.Static.NatsFromTo'
+                                                           1
+                                                           (4 GHC.TypeNats.- 1)
+                                                           (1
+                                                            GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                                        ('[0]
+                                                           : Data.Tensor.Static.Sequence'
+                                                               (Data.Tensor.Static.NatsFromTo'
+                                                                  1
+                                                                  (4 GHC.TypeNats.- 1)
+                                                                  (1
+                                                                   GHC.TypeNats.<=? (4
+                                                                                     GHC.TypeNats.- 1)))
+                                                               '['[]]))))
+                $d(%,,%)1
+                  = GHC.Classes.$p2(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                         Data.Tensor.Static.IsTensor
+                           (Data.Tensor.Static.NormalizeDims
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                           Float,
+                         Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice''
+                              '[0]
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                              (Data.Tensor.Static.SliceEndIndex
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                    '[x1]
+                                    (TypeError ...))
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                                 '[4])
+                              : Data.Tensor.Static.ElemsInSlice'
+                                  (0 : Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[x1]
+                                         (TypeError ...))
+                                  (0 : Data.Tensor.Static.SliceEndIndex
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[x1]
+                                            (TypeError ...))
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[1]
+                                            (TypeError ...))
+                                         '[4])
+                                  (Data.Tensor.Static.Sequence''
+                                     0
+                                     (Data.Tensor.Static.Sequence'
+                                        (Data.Tensor.Static.NatsFromTo'
+                                           1
+                                           (4 GHC.TypeNats.- 1)
+                                           (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                        '['[]])
+                                   Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                           (Data.Tensor.Static.NatsFromTo'
+                                                              1
+                                                              (4 GHC.TypeNats.- 1)
+                                                              (1
+                                                               GHC.TypeNats.<=? (4
+                                                                                 GHC.TypeNats.- 1)))
+                                                           ('[0]
+                                                              : Data.Tensor.Static.Sequence'
+                                                                  (Data.Tensor.Static.NatsFromTo'
+                                                                     1
+                                                                     (4 GHC.TypeNats.- 1)
+                                                                     (1
+                                                                      GHC.TypeNats.<=? (4
+                                                                                        GHC.TypeNats.- 1)))
+                                                                  '['[]]))))
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                         Data.Tensor.Static.IsTensor
+                           (Data.Tensor.Static.NormalizeDims
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                           Float,
+                         Data.Tensor.Static.SetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice''
+                              '[0]
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                              (Data.Tensor.Static.SliceEndIndex
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                    '[x1]
+                                    (TypeError ...))
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                                 '[4])
+                              : Data.Tensor.Static.ElemsInSlice'
+                                  (0 : Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[x1]
+                                         (TypeError ...))
+                                  (0 : Data.Tensor.Static.SliceEndIndex
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[x1]
+                                            (TypeError ...))
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[1]
+                                            (TypeError ...))
+                                         '[4])
+                                  (Data.Tensor.Static.Sequence''
+                                     0
+                                     (Data.Tensor.Static.Sequence'
+                                        (Data.Tensor.Static.NatsFromTo'
+                                           1
+                                           (4 GHC.TypeNats.- 1)
+                                           (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                        '['[]])
+                                   Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                           (Data.Tensor.Static.NatsFromTo'
+                                                              1
+                                                              (4 GHC.TypeNats.- 1)
+                                                              (1
+                                                               GHC.TypeNats.<=? (4
+                                                                                 GHC.TypeNats.- 1)))
+                                                           ('[0]
+                                                              : Data.Tensor.Static.Sequence'
+                                                                  (Data.Tensor.Static.NatsFromTo'
+                                                                     1
+                                                                     (4 GHC.TypeNats.- 1)
+                                                                     (1
+                                                                      GHC.TypeNats.<=? (4
+                                                                                        GHC.TypeNats.- 1)))
+                                                                  '['[]]))))
+                      $d(%,%)2 } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[1]
+                                       (TypeError ...)))
+                                 Float)
+                            @ (Data.Tensor.Static.SetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice''
+                                    '[0]
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[x1]
+                                       (TypeError ...))
+                                    (Data.Tensor.Static.SliceEndIndex
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[1]
+                                          (TypeError ...))
+                                       '[4])
+                                    : Data.Tensor.Static.ElemsInSlice'
+                                        (0 : Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[x1]
+                                               (TypeError ...))
+                                        (0 : Data.Tensor.Static.SliceEndIndex
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[x1]
+                                                  (TypeError ...))
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[1]
+                                                  (TypeError ...))
+                                               '[4])
+                                        (Data.Tensor.Static.Sequence''
+                                           0
+                                           (Data.Tensor.Static.Sequence'
+                                              (Data.Tensor.Static.NatsFromTo'
+                                                 1
+                                                 (4 GHC.TypeNats.- 1)
+                                                 (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                              '['[]])
+                                         Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                                 (Data.Tensor.Static.NatsFromTo'
+                                                                    1
+                                                                    (4 GHC.TypeNats.- 1)
+                                                                    (1
+                                                                     GHC.TypeNats.<=? (4
+                                                                                       GHC.TypeNats.- 1)))
+                                                                 ('[0]
+                                                                    : Data.Tensor.Static.Sequence'
+                                                                        (Data.Tensor.Static.NatsFromTo'
+                                                                           1
+                                                                           (4 GHC.TypeNats.- 1)
+                                                                           (1
+                                                                            GHC.TypeNats.<=? (4
+                                                                                              GHC.TypeNats.- 1)))
+                                                                        '['[]]))))
+                            $d(%,,%)1))
+                      `cast` <Co:12>)
+              of cobox3
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Type.Bool.If
+                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))))
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ (Data.Tensor.Static.NormalizeDims
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                         @ Float
+                         (GHC.Classes.$p2(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[1]
+                                       (TypeError ...)))
+                                 Float)
+                            @ (Data.Tensor.Static.SetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice''
+                                    '[0]
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[x1]
+                                       (TypeError ...))
+                                    (Data.Tensor.Static.SliceEndIndex
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[1]
+                                          (TypeError ...))
+                                       '[4])
+                                    : Data.Tensor.Static.ElemsInSlice'
+                                        (0 : Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[x1]
+                                               (TypeError ...))
+                                        (0 : Data.Tensor.Static.SliceEndIndex
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[x1]
+                                                  (TypeError ...))
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[1]
+                                                  (TypeError ...))
+                                               '[4])
+                                        (Data.Tensor.Static.Sequence''
+                                           0
+                                           (Data.Tensor.Static.Sequence'
+                                              (Data.Tensor.Static.NatsFromTo'
+                                                 1
+                                                 (4 GHC.TypeNats.- 1)
+                                                 (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                              '['[]])
+                                         Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                                 (Data.Tensor.Static.NatsFromTo'
+                                                                    1
+                                                                    (4 GHC.TypeNats.- 1)
+                                                                    (1
+                                                                     GHC.TypeNats.<=? (4
+                                                                                       GHC.TypeNats.- 1)))
+                                                                 ('[0]
+                                                                    : Data.Tensor.Static.Sequence'
+                                                                        (Data.Tensor.Static.NatsFromTo'
+                                                                           1
+                                                                           (4 GHC.TypeNats.- 1)
+                                                                           (1
+                                                                            GHC.TypeNats.<=? (4
+                                                                                              GHC.TypeNats.- 1)))
+                                                                        '['[]]))))
+                            $d(%,,%)1))
+                      `cast` <Co:39>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ [GHC.Types.Nat]
+                     @ [GHC.Types.Nat]
+                     @ (Data.Tensor.Static.NormalizeDims
+                          (Data.Type.Bool.If
+                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                     @ '[]
+                     ((GHC.Classes.$p2(%,%)
+                         @ ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+                             Data.Tensor.Static.IsTensor
+                               (Data.Tensor.Static.NormalizeDims
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[1]
+                                     (TypeError ...)))
+                               Float,
+                             Data.Tensor.Static.GetSliceElemsWrk
+                               (Data.Tensor.Static.ElemsInSlice''
+                                  '[0]
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[x1]
+                                     (TypeError ...))
+                                  (Data.Tensor.Static.SliceEndIndex
+                                     (Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[x1]
+                                        (TypeError ...))
+                                     (Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[1]
+                                        (TypeError ...))
+                                     '[4])
+                                  : Data.Tensor.Static.ElemsInSlice'
+                                      (0 : Data.Type.Bool.If
+                                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                             '[x1]
+                                             (TypeError ...))
+                                      (0 : Data.Tensor.Static.SliceEndIndex
+                                             (Data.Type.Bool.If
+                                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                '[x1]
+                                                (TypeError ...))
+                                             (Data.Type.Bool.If
+                                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                '[1]
+                                                (TypeError ...))
+                                             '[4])
+                                      (Data.Tensor.Static.Sequence''
+                                         0
+                                         (Data.Tensor.Static.Sequence'
+                                            (Data.Tensor.Static.NatsFromTo'
+                                               1
+                                               (4 GHC.TypeNats.- 1)
+                                               (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                            '['[]])
+                                       Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                               (Data.Tensor.Static.NatsFromTo'
+                                                                  1
+                                                                  (4 GHC.TypeNats.- 1)
+                                                                  (1
+                                                                   GHC.TypeNats.<=? (4
+                                                                                     GHC.TypeNats.- 1)))
+                                                               ('[0]
+                                                                  : Data.Tensor.Static.Sequence'
+                                                                      (Data.Tensor.Static.NatsFromTo'
+                                                                         1
+                                                                         (4 GHC.TypeNats.- 1)
+                                                                         (1
+                                                                          GHC.TypeNats.<=? (4
+                                                                                            GHC.TypeNats.- 1)))
+                                                                      '['[]])))),
+                            (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                             Data.Tensor.Static.IsTensor
+                               (Data.Tensor.Static.NormalizeDims
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[1]
+                                     (TypeError ...)))
+                               Float,
+                             Data.Tensor.Static.SetSliceElemsWrk
+                               (Data.Tensor.Static.ElemsInSlice''
+                                  '[0]
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[x1]
+                                     (TypeError ...))
+                                  (Data.Tensor.Static.SliceEndIndex
+                                     (Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[x1]
+                                        (TypeError ...))
+                                     (Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[1]
+                                        (TypeError ...))
+                                     '[4])
+                                  : Data.Tensor.Static.ElemsInSlice'
+                                      (0 : Data.Type.Bool.If
+                                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                             '[x1]
+                                             (TypeError ...))
+                                      (0 : Data.Tensor.Static.SliceEndIndex
+                                             (Data.Type.Bool.If
+                                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                '[x1]
+                                                (TypeError ...))
+                                             (Data.Type.Bool.If
+                                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                '[1]
+                                                (TypeError ...))
+                                             '[4])
+                                      (Data.Tensor.Static.Sequence''
+                                         0
+                                         (Data.Tensor.Static.Sequence'
+                                            (Data.Tensor.Static.NatsFromTo'
+                                               1
+                                               (4 GHC.TypeNats.- 1)
+                                               (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                            '['[]])
+                                       Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                               (Data.Tensor.Static.NatsFromTo'
+                                                                  1
+                                                                  (4 GHC.TypeNats.- 1)
+                                                                  (1
+                                                                   GHC.TypeNats.<=? (4
+                                                                                     GHC.TypeNats.- 1)))
+                                                               ('[0]
+                                                                  : Data.Tensor.Static.Sequence'
+                                                                      (Data.Tensor.Static.NatsFromTo'
+                                                                         1
+                                                                         (4 GHC.TypeNats.- 1)
+                                                                         (1
+                                                                          GHC.TypeNats.<=? (4
+                                                                                            GHC.TypeNats.- 1)))
+                                                                      '['[]])))))
+                         @ ((Data.Tensor.Static.NormalizeDims
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                  '[1]
+                                  (TypeError ...)) :: [GHC.Types.Nat])
+                            ~
+                            ('[] :: [GHC.Types.Nat]))
+                         $d(%,%)1)
+                      `cast` <Co:40>)
+              of cobox5
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                            @ (Type.List.DemoteWith
+                                 [GHC.Types.Nat]
+                                 ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                 (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                                 (Data.Tensor.Static.Sequence
+                                    (Data.Tensor.Static.IndexesRanges'
+                                       '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                                       (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))))
+                            (GHC.Classes.$p3(%,,,%)
+                               @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                               @ (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+                                    Data.Tensor.Static.IsTensor
+                                      (Data.Tensor.Static.NormalizeDims
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[1]
+                                            (TypeError ...)))
+                                      Float,
+                                    Data.Tensor.Static.GetSliceElemsWrk
+                                      (Data.Tensor.Static.ElemsInSlice''
+                                         '[0]
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[x1]
+                                            (TypeError ...))
+                                         (Data.Tensor.Static.SliceEndIndex
+                                            (Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[x1]
+                                               (TypeError ...))
+                                            (Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[1]
+                                               (TypeError ...))
+                                            '[4])
+                                         : Data.Tensor.Static.ElemsInSlice'
+                                             (0 : Data.Type.Bool.If
+                                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                    '[x1]
+                                                    (TypeError ...))
+                                             (0 : Data.Tensor.Static.SliceEndIndex
+                                                    (Data.Type.Bool.If
+                                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                       '[x1]
+                                                       (TypeError ...))
+                                                    (Data.Type.Bool.If
+                                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                       '[1]
+                                                       (TypeError ...))
+                                                    '[4])
+                                             (Data.Tensor.Static.Sequence''
+                                                0
+                                                (Data.Tensor.Static.Sequence'
+                                                   (Data.Tensor.Static.NatsFromTo'
+                                                      1
+                                                      (4 GHC.TypeNats.- 1)
+                                                      (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                                   '['[]])
+                                              Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                                      (Data.Tensor.Static.NatsFromTo'
+                                                                         1
+                                                                         (4 GHC.TypeNats.- 1)
+                                                                         (1
+                                                                          GHC.TypeNats.<=? (4
+                                                                                            GHC.TypeNats.- 1)))
+                                                                      ('[0]
+                                                                         : Data.Tensor.Static.Sequence'
+                                                                             (Data.Tensor.Static.NatsFromTo'
+                                                                                1
+                                                                                (4 GHC.TypeNats.- 1)
+                                                                                (1
+                                                                                 GHC.TypeNats.<=? (4
+                                                                                                   GHC.TypeNats.- 1)))
+                                                                             '['[]])))),
+                                   (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                                    Data.Tensor.Static.IsTensor
+                                      (Data.Tensor.Static.NormalizeDims
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[1]
+                                            (TypeError ...)))
+                                      Float,
+                                    Data.Tensor.Static.SetSliceElemsWrk
+                                      (Data.Tensor.Static.ElemsInSlice''
+                                         '[0]
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[x1]
+                                            (TypeError ...))
+                                         (Data.Tensor.Static.SliceEndIndex
+                                            (Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[x1]
+                                               (TypeError ...))
+                                            (Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[1]
+                                               (TypeError ...))
+                                            '[4])
+                                         : Data.Tensor.Static.ElemsInSlice'
+                                             (0 : Data.Type.Bool.If
+                                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                    '[x1]
+                                                    (TypeError ...))
+                                             (0 : Data.Tensor.Static.SliceEndIndex
+                                                    (Data.Type.Bool.If
+                                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                       '[x1]
+                                                       (TypeError ...))
+                                                    (Data.Type.Bool.If
+                                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                       '[1]
+                                                       (TypeError ...))
+                                                    '[4])
+                                             (Data.Tensor.Static.Sequence''
+                                                0
+                                                (Data.Tensor.Static.Sequence'
+                                                   (Data.Tensor.Static.NatsFromTo'
+                                                      1
+                                                      (4 GHC.TypeNats.- 1)
+                                                      (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                                   '['[]])
+                                              Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                                      (Data.Tensor.Static.NatsFromTo'
+                                                                         1
+                                                                         (4 GHC.TypeNats.- 1)
+                                                                         (1
+                                                                          GHC.TypeNats.<=? (4
+                                                                                            GHC.TypeNats.- 1)))
+                                                                      ('[0]
+                                                                         : Data.Tensor.Static.Sequence'
+                                                                             (Data.Tensor.Static.NatsFromTo'
+                                                                                1
+                                                                                (4 GHC.TypeNats.- 1)
+                                                                                (1
+                                                                                 GHC.TypeNats.<=? (4
+                                                                                                   GHC.TypeNats.- 1)))
+                                                                             '['[]]))))),
+                                  (Data.Tensor.Static.NormalizeDims
+                                     (Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[1]
+                                        (TypeError ...)) :: [GHC.Types.Nat])
+                                  ~
+                                  ('[] :: [GHC.Types.Nat]))
+                               @ (Data.Tensor.Static.IsTensor
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float,
+                                  Type.List.DemoteWith
+                                    [GHC.Types.Nat]
+                                    ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                    (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                                          (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))))
+                               @ (Data.Matrix.Static.Sign x1)
+                               (w `cast` <Co:5736>))))
+                      `cast` <Co:16>)
+              of cobox6
+              { __DEFAULT ->
+              let {
+                $d(%,%)3 :: MinorMatrix 0 x1 4 Float
+                $d(%,%)3
+                  = GHC.Classes.$p3(%,,,%)
+                      @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                      @ (Data.Tensor.Static.TensorElem '[0, x1] '[4, 4] Float)
+                      @ (MinorMatrix 0 x1 4 Float)
+                      @ (Data.Matrix.Static.Sign x1)
+                      (w `cast` <Co:13>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                            @ (Type.List.DemoteWith
+                                 [GHC.Types.Nat]
+                                 ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                 (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                                 (Data.Tensor.Static.AllIndexes
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                            $d(%,%)3))
+                      `cast` <Co:16>)
+              of cobox7
+              { __DEFAULT ->
+              let {
+                $d(%,%)4 :: Data.Tensor.Static.TensorElem '[0, x1] '[4, 4] Float
+                $d(%,%)4
+                  = GHC.Classes.$p2(%,,,%)
+                      @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                      @ (Data.Tensor.Static.TensorElem '[0, x1] '[4, 4] Float)
+                      @ (MinorMatrix 0 x1 4 Float)
+                      @ (Data.Matrix.Static.Sign x1)
+                      (w `cast` <Co:13>) } in
+              let {
+                $d(%,%)5 :: Data.Tensor.Static.SubtensorCtx '[0, x1] '[4, 4] Float
+                $d(%,%)5
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.SubtensorCtx '[0, x1] '[4, 4] Float)
+                      @ ((Data.Tensor.Static.NormalizeDims
+                            (Data.Tensor.Static.SubtensorDims
+                               '[0, x1] '[4, 4]) :: [GHC.Types.Nat])
+                         ~
+                         ('[] :: [GHC.Types.Nat]))
+                      $d(%,%)4 } in
+              let {
+                $d(%,,%)2 :: Data.Tensor.Static.GetSubtensor '[0, x1] '[4, 4] Float
+                $d(%,,%)2
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.GetSubtensor '[0, x1] '[4, 4] Float)
+                      @ (Data.Tensor.Static.SetSubtensor '[0, x1] '[4, 4] Float)
+                      $d(%,%)5 } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                                 Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                                    '[4, 4]))
+                            $d(%,,%)2))
+                      `cast` <Co:12>)
+              of cobox8
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])))
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ (Data.Tensor.Static.NormalizeDims
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                         @ Float
+                         (GHC.Classes.$p2(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                                 Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                                    '[4, 4]))
+                            $d(%,,%)2))
+                      `cast` <Co:22>)
+              of cobox9
+              { __DEFAULT ->
+              let {
+                $d(%,,%)3 :: Data.Tensor.Static.SetSubtensor '[0, x1] '[4, 4] Float
+                $d(%,,%)3
+                  = GHC.Classes.$p2(%,%)
+                      @ (Data.Tensor.Static.GetSubtensor '[0, x1] '[4, 4] Float)
+                      @ (Data.Tensor.Static.SetSubtensor '[0, x1] '[4, 4] Float)
+                      $d(%,%)5 } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                                 Float)
+                            @ (Data.Tensor.Static.SetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                                    '[4, 4]))
+                            $d(%,,%)3))
+                      `cast` <Co:12>)
+              of cobox10
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])))
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ (Data.Tensor.Static.NormalizeDims
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                         @ Float
+                         (GHC.Classes.$p2(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                                 Float)
+                            @ (Data.Tensor.Static.SetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                                    '[4, 4]))
+                            $d(%,,%)3))
+                      `cast` <Co:22>)
+              of cobox11
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ [GHC.Types.Nat]
+                     @ [GHC.Types.Nat]
+                     @ (Data.Tensor.Static.NormalizeDims
+                          (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                     @ '[]
+                     ((GHC.Classes.$p2(%,%)
+                         @ (Data.Tensor.Static.SubtensorCtx '[0, x1] '[4, 4] Float)
+                         @ ((Data.Tensor.Static.NormalizeDims
+                               (Data.Tensor.Static.SubtensorDims
+                                  '[0, x1] '[4, 4]) :: [GHC.Types.Nat])
+                            ~
+                            ('[] :: [GHC.Types.Nat]))
+                         $d(%,%)4)
+                      `cast` <Co:23>)
+              of cobox12
+              { __DEFAULT ->
+              case ((GHC.Classes.$p4(%,,,%)
+                       @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                       @ (Data.Tensor.Static.TensorElem '[0, x1] '[4, 4] Float)
+                       @ (MinorMatrix 0 x1 4 Float)
+                       @ (Data.Matrix.Static.Sign x1)
+                       (w `cast` <Co:13>))
+                    `cast` <Co:2>)
+                     @ Float GHC.Float.$fNumFloat
+              of
+              { GHC.Types.F# x ->
+              let {
+                $dIsTensor1
+                  :: Data.Tensor.Static.IsTensor
+                       (Data.Tensor.Static.NormalizeDims
+                          (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                       Float
+                $dIsTensor1
+                  = GHC.Classes.$p2(%,,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.IsTensor
+                           (Data.Tensor.Static.NormalizeDims
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                           Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                              '[4, 4]))
+                      $d(%,,%)2 } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])))
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ (Data.Tensor.Static.NormalizeDims
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                         @ Float
+                         $dIsTensor1)
+                      `cast` <Co:22>)
+              of cobox24
+              { __DEFAULT ->
+              let {
+                $dIsTensor2 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor2
+                  = GHC.Classes.$p1(%,,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.IsTensor
+                           (Data.Tensor.Static.NormalizeDims
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                           Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                              '[4, 4]))
+                      $d(%,,%)2 } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor2)
+                      `cast` <Co:12>)
+              of cobox25
+              { __DEFAULT ->
+              case (Data.Tensor.Static.unsafeFromList
+                      @ (Data.Tensor.Static.NormalizeDims
+                           (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                      @ Float
+                      $dIsTensor1
+                      (((GHC.Classes.$p3(%,,%)
+                           @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                           @ (Data.Tensor.Static.IsTensor
+                                (Data.Tensor.Static.NormalizeDims
+                                   (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                                Float)
+                           @ (Data.Tensor.Static.GetSliceElemsWrk
+                                (Data.Tensor.Static.ElemsInSlice
+                                   (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                                   (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                                   '[4, 4]))
+                           $d(%,,%)2)
+                        `cast` <Co:44>)
+                         @ Float
+                         (Data.Tensor.Static.toList
+                            @ '[4, 4] @ Float $dIsTensor2 (m1 `cast` <Co:14>))))
+                   `cast` <Co:8>
+              of
+              { GHC.Types.F# y ->
+              case ((GHC.Classes.$p1(%,,,%)
+                       @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                       @ (Data.Tensor.Static.TensorElem '[0, x1] '[4, 4] Float)
+                       @ (MinorMatrix 0 x1 4 Float)
+                       @ (Data.Matrix.Static.Sign x1)
+                       (w `cast` <Co:13>))
+                    `cast` <Co:5>)
+                     GHC.Float.$fNumFloat
+                     (let {
+                        $dIsTensor4
+                          :: Data.Tensor.Static.IsTensor
+                               '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float
+                        $dIsTensor4
+                          = GHC.Classes.$p1(%,%)
+                              @ (Data.Tensor.Static.IsTensor
+                                   '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                              @ (Type.List.DemoteWith
+                                   [GHC.Types.Nat]
+                                   ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                   (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                                   (Data.Tensor.Static.AllIndexes
+                                      '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                              $d(%,%)3 } in
+                      case GHC.Types.HEq_sc
+                             @ Bool
+                             @ Bool
+                             @ (Data.Tensor.Static.PositiveDims
+                                  '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                             @ 'True
+                             ((Data.Tensor.Static.$p1IsTensor
+                                 @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] @ Float $dIsTensor4)
+                              `cast` <Co:16>)
+                      of cobox14
+                      { __DEFAULT ->
+                      Data.Tensor.Static.unsafeFromList
+                        @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                        @ Float
+                        $dIsTensor4
+                        (((GHC.Classes.$p2(%,%)
+                             @ (Data.Tensor.Static.IsTensor
+                                  '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                             @ (Type.List.DemoteWith
+                                  [GHC.Types.Nat]
+                                  ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                  (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                                  (Data.Tensor.Static.AllIndexes
+                                     '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                             $d(%,%)3)
+                          `cast` <Co:25>)
+                           @ Float (lvl19 @ x1))
+                      })
+              of
+              { GHC.Types.F# y1 ->
+              GHC.Prim.timesFloat# (GHC.Prim.timesFloat# x y) y1
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              } } in
+      case $wf1
+             @ 0
+             (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+              `cast` <Co:22703>)
+      of ww
+      { __DEFAULT ->
+      case $wf1
+             @ 1
+             (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith59
+              `cast` <Co:22793>)
+      of ww1
+      { __DEFAULT ->
+      case $wf1
+             @ 2
+             (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith43
+              `cast` <Co:22793>)
+      of ww2
+      { __DEFAULT ->
+      case $wf1
+             @ 3
+             (CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:22793>)
+      of ww3
+      { __DEFAULT ->
+      GHC.Types.F#
+        (GHC.Prim.plusFloat#
+           ww (GHC.Prim.plusFloat# ww1 (GHC.Prim.plusFloat# ww2 ww3)))
+      }
+      }
+      }
+      }
+
+
+------ Local rules for imported ids --------
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        3
+                                                                                        4
+                                                                                        Float) @ '[] @ '[2,
+                                                                                                         2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        3
+                                                                                        4
+                                                                                        Float) @ '['[2,
+                                                                                                     2]] @ '[2,
+                                                                                                             1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith2
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        3
+                                                                                        4
+                                                                                        Float) @ '['[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[2,
+                                                                                                             0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith4
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        3
+                                                                                        4
+                                                                                        Float) @ '['[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[1,
+                                                                                                             2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith6
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        3
+                                                                                        4
+                                                                                        Float) @ '['[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[1,
+                                                                                                             1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith8
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        3
+                                                                                        4
+                                                                                        Float) @ '['[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[1,
+                                                                                                             0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith10
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        3
+                                                                                        4
+                                                                                        Float) @ '['[1,
+                                                                                                     0],
+                                                                                                   '[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[0,
+                                                                                                             2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith12
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        3
+                                                                                        4
+                                                                                        Float) @ '['[0,
+                                                                                                     2],
+                                                                                                   '[1,
+                                                                                                     0],
+                                                                                                   '[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[0,
+                                                                                                             1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith14
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        3
+                                                                                        4
+                                                                                        Float) @ '['[0,
+                                                                                                     1],
+                                                                                                   '[0,
+                                                                                                     2],
+                                                                                                   '[1,
+                                                                                                     0],
+                                                                                                   '[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[0,
+                                                                                                             0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith16
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        2
+                                                                                        4
+                                                                                        Float) @ '[] @ '[2,
+                                                                                                         2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith30
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        2
+                                                                                        4
+                                                                                        Float) @ '['[2,
+                                                                                                     2]] @ '[2,
+                                                                                                             1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith32
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        2
+                                                                                        4
+                                                                                        Float) @ '['[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[2,
+                                                                                                             0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        1
+                                                                                        4
+                                                                                        Float) @ '[] @ '[2,
+                                                                                                         2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        1
+                                                                                        4
+                                                                                        Float) @ '['[2,
+                                                                                                     2]] @ '[2,
+                                                                                                             1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith50
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        1
+                                                                                        4
+                                                                                        Float) @ '['[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[2,
+                                                                                                             0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        0
+                                                                                        4
+                                                                                        Float) @ '[] @ '[2,
+                                                                                                         2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith65
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        0
+                                                                                        4
+                                                                                        Float) @ '['[2,
+                                                                                                     2]] @ '[2,
+                                                                                                             1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith66
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        0
+                                                                                        4
+                                                                                        Float) @ '['[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[2,
+                                                                                                             0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith67
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        2
+                                                                                        4
+                                                                                        Float) @ '['[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[1,
+                                                                                                             2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith34
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        2
+                                                                                        4
+                                                                                        Float) @ '['[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[1,
+                                                                                                             1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith36
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        2
+                                                                                        4
+                                                                                        Float) @ '['[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[1,
+                                                                                                             0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        1
+                                                                                        4
+                                                                                        Float) @ '['[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[1,
+                                                                                                             2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith52
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        1
+                                                                                        4
+                                                                                        Float) @ '['[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[1,
+                                                                                                             1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        1
+                                                                                        4
+                                                                                        Float) @ '['[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[1,
+                                                                                                             0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith54
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        0
+                                                                                        4
+                                                                                        Float) @ '['[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[1,
+                                                                                                             2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith68
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        0
+                                                                                        4
+                                                                                        Float) @ '['[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[1,
+                                                                                                             1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith69
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        0
+                                                                                        4
+                                                                                        Float) @ '['[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[1,
+                                                                                                             0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith70
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        2
+                                                                                        4
+                                                                                        Float) @ '['[1,
+                                                                                                     0],
+                                                                                                   '[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[0,
+                                                                                                             2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith38
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        2
+                                                                                        4
+                                                                                        Float) @ '['[0,
+                                                                                                     2],
+                                                                                                   '[1,
+                                                                                                     0],
+                                                                                                   '[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[0,
+                                                                                                             1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith40
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        2
+                                                                                        4
+                                                                                        Float) @ '['[0,
+                                                                                                     1],
+                                                                                                   '[0,
+                                                                                                     2],
+                                                                                                   '[1,
+                                                                                                     0],
+                                                                                                   '[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[0,
+                                                                                                             0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        1
+                                                                                        4
+                                                                                        Float) @ '['[1,
+                                                                                                     0],
+                                                                                                   '[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[0,
+                                                                                                             2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith55
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        1
+                                                                                        4
+                                                                                        Float) @ '['[0,
+                                                                                                     2],
+                                                                                                   '[1,
+                                                                                                     0],
+                                                                                                   '[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[0,
+                                                                                                             1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith56
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        1
+                                                                                        4
+                                                                                        Float) @ '['[0,
+                                                                                                     1],
+                                                                                                   '[0,
+                                                                                                     2],
+                                                                                                   '[1,
+                                                                                                     0],
+                                                                                                   '[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[0,
+                                                                                                             0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith57
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        0
+                                                                                        4
+                                                                                        Float) @ '['[1,
+                                                                                                     0],
+                                                                                                   '[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[0,
+                                                                                                             2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith71
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        0
+                                                                                        4
+                                                                                        Float) @ '['[0,
+                                                                                                     2],
+                                                                                                   '[1,
+                                                                                                     0],
+                                                                                                   '[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[0,
+                                                                                                             1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith72
+"SPEC/CoreDump.Matrix.Cofactor $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                               [Nat] Constraint
+                                                                             -> *) @ (MinorMatrixGoSym4
+                                                                                        0
+                                                                                        0
+                                                                                        4
+                                                                                        Float) @ '['[0,
+                                                                                                     1],
+                                                                                                   '[0,
+                                                                                                     2],
+                                                                                                   '[1,
+                                                                                                     0],
+                                                                                                   '[1,
+                                                                                                     1],
+                                                                                                   '[1,
+                                                                                                     2],
+                                                                                                   '[2,
+                                                                                                     0],
+                                                                                                   '[2,
+                                                                                                     1],
+                                                                                                   '[2,
+                                                                                                     2]] @ '[0,
+                                                                                                             0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk152
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk151
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk150
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk149
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk148
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk147
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk146
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk145
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk144
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk161
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk160
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk159
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk158
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk157
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk156
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk155
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk154
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk153
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk170
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk169
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk168
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk167
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk166
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk165
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk164
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk163
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk162
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk179
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk178
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk177
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk176
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk175
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk174
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk173
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk172
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk171
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk188
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk187
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk186
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk185
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk184
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk183
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk182
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk181
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk180
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk197
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk196
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk195
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk194
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk193
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk192
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk191
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk190
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk189
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk206
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk205
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk204
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk203
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk202
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk201
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk200
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk199
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk198
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk215
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk214
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk213
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk212
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk211
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk210
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk209
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk208
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk207
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk224
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk223
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk222
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk221
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk220
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk219
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk218
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk217
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk216
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk233
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk232
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk231
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk230
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk229
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk228
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk227
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk226
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk225
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk242
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk241
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk240
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk239
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk238
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk237
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk236
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk235
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk234
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk251
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk250
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk249
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk248
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk247
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk246
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk245
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk244
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk243
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk260
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk259
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk258
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk257
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk256
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk255
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk254
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk253
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk252
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk268
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk267
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk266
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk265
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk264
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk263
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk262
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk261
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk275
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk274
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk273
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk272
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk271
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk270
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk269
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk143
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk142
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk141
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk140
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk139
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk138
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk137
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk136
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk135
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk16
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk17
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk18
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.Cofactor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.Cofactor $fSetSliceElemsWrk:_$csetSliceElemsWrk @ '['False,
+                                                                         'True, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dSetSliceElemsWrk
+              :: Data.Tensor.Static.SetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fSetSliceElemsWrk:_$csetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dSetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.Cofactor $fSetSliceElemsWrk:_$csetSliceElemsWrk @ '['True,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dSetSliceElemsWrk
+              :: Data.Tensor.Static.SetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fSetSliceElemsWrk:_$csetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dSetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.Cofactor $fSetSliceElemsWrk:_$csetSliceElemsWrk @ '['False,
+                                                                         'False, 'True, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dSetSliceElemsWrk
+              :: Data.Tensor.Static.SetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fSetSliceElemsWrk:_$csetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dSetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk
+"SPEC/CoreDump.Matrix.Cofactor $fSetSliceElemsWrk:0_$csetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dSetSliceElemsWrk
+              :: Data.Tensor.Static.SetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fSetSliceElemsWrk:0_$csetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dSetSliceElemsWrk
+      = CoreDump.Matrix.Cofactor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:0_$csetSliceElemsWrk
+
+ tests/CoreDump/Matrix/Cofactor.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.Cofactor where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+-- FIXME: Generates terrible Core.
+cofactor_ :: Matrix 5 5 Float -> Float
+cofactor_ = cofactor @0 @0
+ tests/CoreDump/Matrix/CofactorMatrix.dump-simpl.ghc821.golden view
@@ -0,0 +1,15575 @@+
+==================== Tidy Core ====================
+2017-09-12 21:53:44.81729 UTC
+
+Result size of Tidy Core
+  = {terms: 3,365, types: 28,368, coercions: 1,399,302, joins: 0/7}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.CofactorMatrix.$trModule2
+  = "CoreDump.Matrix.CofactorMatrix"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.CofactorMatrix.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.CofactorMatrix.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.CofactorMatrix.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.CofactorMatrix.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.CofactorMatrix.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$trModule :: GHC.Types.Module
+CoreDump.Matrix.CofactorMatrix.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.CofactorMatrix.$trModule3
+      CoreDump.Matrix.CofactorMatrix.$trModule1
+
+-- RHS size: {terms: 3, types: 1, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+  :: Num Float => Matrix 3 3 Float -> Float
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+  = Data.Matrix.Static.$fDeterminant3e_$cdeterminant
+      @ Float GHC.Float.$fNumFloat TensorInstances.$fIsTensor:Float3
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith26
+  :: Integer
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith26
+  = 1
+
+-- RHS size: {terms: 12, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+  :: forall a. Num a => a
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith26))
+        (fromInteger
+           @ a
+           $dNum
+           CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith26)
+
+-- RHS size: {terms: 11, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+  :: forall a. Num a => a
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith26))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+           @ a $dNum)
+
+-- RHS size: {terms: 11, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+  :: forall a. Num a => a
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith26))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+           @ a $dNum)
+
+-- RHS size: {terms: 11, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+  :: forall a. Num a => a
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith26))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+           @ a $dNum)
+
+-- RHS size: {terms: 11, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+  :: forall a. Num a => a
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith26))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+           @ a $dNum)
+
+-- RHS size: {terms: 11, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith20
+  :: forall a. Num a => a
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith20
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith26))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+           @ a $dNum)
+
+-- RHS size: {terms: 8, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 -> GHC.Types.[] @ e
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith2
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith2
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith4
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith4
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith2
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith6
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith6
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith4
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith8
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith8
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith6
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith10
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith10
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith8
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith12
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith12
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith10
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith14
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith14
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith12
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith16
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith16
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith14
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith16
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith29,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 6)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith27,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith20
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith30
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith30
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith32
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith32
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith30
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith32
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith34
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith34
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith36
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith36
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith34
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith36
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith38
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith38
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith40
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith40
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith38
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith40
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith45
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith45
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith44
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith44
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith45,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith43
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 5)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith43
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith44,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith46
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith46
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith47
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith47
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith46
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith48
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith48
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith47
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith48
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith50
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith50
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith50
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith52
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith52
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith52
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith54
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith54
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith58
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith58
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith54
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith57
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith57
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith58,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith56
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 4)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith56
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith57,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,333, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith59
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith59
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9333>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,333, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith60
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith60
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9333>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith59
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,331, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith61
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith61
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9331>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith60
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,333, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith62
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith62
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9333>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith61
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,333, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith63
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith63
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9333>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith62
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,331, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith64
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith64
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9331>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith63
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,313, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith65
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith65
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9313>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith64
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,313, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith66
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith66
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9313>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith65
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,311, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith67
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith67
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9311>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith66
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith71
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith71
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith67
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith70
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith70
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith71,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith69
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 3)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith69
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith70,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith72
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith72
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith74
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith74
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith72
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith76
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith76
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith74
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith78
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith78
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith76
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith78
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith80
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith80
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith81
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith81
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith80
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith82
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith82
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith81
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith83
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith83
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith82
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith87
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith87
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith83
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith86
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith86
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith87,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith85
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 5)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith85
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith86,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith88
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith88
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith89
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith89
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith88
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith90
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith90
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith89
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith91
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith91
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith90
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith92
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith92
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith91
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith93
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith93
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith92
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith94
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith94
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith93
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith95
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith95
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith94
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith96
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith96
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith95
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith149
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith149
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith96
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith148
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith148
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith149,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith147
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 4)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith147
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith148,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith97
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith97
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith98
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith98
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith97
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith99
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith99
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith98
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith100
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith100
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith99
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith101
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith101
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith100
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith102
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith102
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith101
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,327, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith103
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith103
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9327>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith102
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,327, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith104
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith104
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9327>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith103
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,307, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith105
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith105
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9307>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith104
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith192
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith192
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith105
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith191
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith191
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith192,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith190
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 3)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith190
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith191,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 10, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 -> GHC.Types.: @ e x (GHC.Types.[] @ e)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith106
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith106
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith108
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith108
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith106
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith109
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith109
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith108
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith110
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith110
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith109
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith111
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith111
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith110
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith112
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith112
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith111
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith113
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith113
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith112
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith113
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith115
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith115
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith119
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith119
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith115
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith118
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith118
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith119,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith117
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 4)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith117
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith118,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith120
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith120
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith121
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith121
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith120
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith122
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith122
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith121
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith123
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith123
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith122
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith124
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith124
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith123
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith125
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith125
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith124
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith126
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith126
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith125
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith127
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith127
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith126
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith128
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith128
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith127
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith132
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith132
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith128
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith131
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith131
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith132,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith130
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 3)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith130
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith131,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,343, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith133
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith133
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+            `cast` <Co:9343>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,343, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith134
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith134
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9343>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith133
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,341, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith135
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith135
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9341>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith134
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,333, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith136
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith136
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9333>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith135
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,333, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith137
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith137
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9333>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith136
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,331, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith138
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith138
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9331>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith137
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,313, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith139
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith139
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9313>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith138
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,313, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith140
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith140
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9313>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith139
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,311, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith141
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith141
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9311>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith140
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith145
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith145
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith141
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith144
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith144
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith145,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith143
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 2)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith143
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith144,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith150
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith150
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith151
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith151
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith150
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith152
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith152
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith151
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith153
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith153
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith152
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith154
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith154
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith153
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith155
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith155
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith154
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith156
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith156
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith155
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith157
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith157
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith156
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith158
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith158
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith157
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith162
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith162
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith158
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith161
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith161
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith162,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith160
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 3)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith160
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith161,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith163
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith163
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith164
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith164
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith163
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith165
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith165
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith164
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith166
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith166
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith165
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith167
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith167
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith166
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith168
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith168
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith167
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith169
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith169
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith168
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith170
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith170
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith169
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith171
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith171
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith170
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith175
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith175
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith171
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith174
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith174
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith175,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith173
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 2)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith173
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith174,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,343, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith176
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith176
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+            `cast` <Co:9343>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,343, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith177
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith177
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9343>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith176
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,341, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith178
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith178
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9341>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith177
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,343, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith179
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith179
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9343>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith178
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,343, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith180
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith180
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9343>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith179
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,341, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith181
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith181
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9341>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith180
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,313, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith182
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith182
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9313>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith181
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,313, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith183
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith183
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9313>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith182
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,311, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith184
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith184
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9311>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith183
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith188
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith188
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith184
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith187
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith187
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith188,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith186
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 1)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith186
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith187,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith193
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith193
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith194
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith194
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith193
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith195
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith195
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith194
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith196
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith196
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith195
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith197
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith197
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith196
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith198
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith198
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith197
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,337, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith199
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith199
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9337>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith198
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,327, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith200
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith200
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9327>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith199
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,307, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith201
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith201
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9307>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith200
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith205
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith205
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith201
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith204
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith204
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith205,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith203
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 2)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith203
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith204,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith206
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith206
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith207
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith207
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith206
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith208
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith208
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith207
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith209
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith209
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith208
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith210
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith210
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith209
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith211
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith211
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith210
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,337, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith212
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith212
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9337>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith211
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,337, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith213
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith213
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9337>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith212
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,307, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith214
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith214
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9307>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith213
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith218
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith218
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith214
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith217
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith217
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith218,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith216
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 1)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith216
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith217,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,269, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith219
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith219
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+            `cast` <Co:9269>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,269, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith220
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith220
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9269>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith219
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,267, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith221
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith221
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9267>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith220
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,269, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith222
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith222
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9269>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith221
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,269, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith223
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith223
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9269>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith222
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,267, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith224
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith224
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9267>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith223
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,267, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith225
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith225
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9267>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith224
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,267, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith226
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith226
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9267>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith225
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,265, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith227
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith227
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9265>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith226
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith231
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith231
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith227
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith230
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith230
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith231,
+     CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith229
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 0)
+CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith229
+  = (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith230,
+     Data.Matrix.Static.$fSign0_$csign `cast` <Co:3>)
+
+-- RHS size: {terms: 179,
+              types: 1,342,
+              coercions: 49,142,
+              joins: 0/7}
+cofactorMatrix_ :: Matrix 4 4 Float -> Matrix 4 4 Float
+cofactorMatrix_
+  = \ (m :: Matrix 4 4 Float) ->
+      let {
+        lvl
+          :: forall (x1 :: [GHC.Types.Nat]) (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 x1)
+                  (Data.Matrix.Static.Index1 x1)
+                  4
+                  Float)
+               index =>
+             Data.Proxy.Proxy index -> Float
+        lvl
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (@ (index :: [GHC.Types.Nat]))
+              (irred
+                 :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 x1)
+                         (Data.Matrix.Static.Index1 x1)
+                         4
+                         Float)
+                      index)
+              _ ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 x1)
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 x1)
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 x1)
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 x1)
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 x1)
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (irred `cast` <Co:153>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 x1)
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 x1)
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (irred `cast` <Co:22>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 x1) (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 x1) (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (irred `cast` <Co:22>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 x1) (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 x1) (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (irred `cast` <Co:22>))
+                    `cast` <Co:34>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 m)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x ds1 -> x
+              }
+              }
+              }
+              } } in
+      let {
+        $wf
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.CofactorMatrixGoSym2 4 Float)
+               x1 =>
+             Float
+        $wf
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.CofactorMatrixGoSym2 4 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                            @ (Type.List.DemoteWith
+                                 [GHC.Types.Nat]
+                                 ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                 (Data.Matrix.Static.MinorMatrixGoSym4
+                                    (Data.Matrix.Static.Index0 x1)
+                                    (Data.Matrix.Static.Index1 x1)
+                                    4
+                                    Float)
+                                 (Data.Tensor.Static.Sequence
+                                    (Data.Tensor.Static.IndexesRanges'
+                                       '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                                       (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))))
+                            (GHC.Classes.$p1(%,,%)
+                               @ (Data.Tensor.Static.IsTensor
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float,
+                                  Type.List.DemoteWith
+                                    [GHC.Types.Nat]
+                                    ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                    (Data.Matrix.Static.MinorMatrixGoSym4
+                                       (Data.Matrix.Static.Index0 x1)
+                                       (Data.Matrix.Static.Index1 x1)
+                                       4
+                                       Float)
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                                          (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))))
+                               @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                               @ (Num Float)
+                               (GHC.Classes.$p1(%,%)
+                                  @ ((Data.Tensor.Static.IsTensor
+                                        '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float,
+                                      Type.List.DemoteWith
+                                        [GHC.Types.Nat]
+                                        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                        (Data.Matrix.Static.MinorMatrixGoSym4
+                                           (Data.Matrix.Static.Index0 x1)
+                                           (Data.Matrix.Static.Index1 x1)
+                                           4
+                                           Float)
+                                        (Data.Tensor.Static.Sequence
+                                           (Data.Tensor.Static.IndexesRanges'
+                                              '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                                              (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))))),
+                                     Determinant (4 GHC.TypeNats.- 1) Float, Num Float)
+                                  @ (Data.Matrix.Static.Sign
+                                       (Data.Matrix.Static.Index0 x1
+                                        GHC.TypeNats.+ Data.Matrix.Static.Index1 x1))
+                                  (w `cast` <Co:74>)))))
+                      `cast` <Co:16>)
+              of cobox2
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                            @ (Type.List.DemoteWith
+                                 [GHC.Types.Nat]
+                                 ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                 (Data.Matrix.Static.MinorMatrixGoSym4
+                                    (Data.Matrix.Static.Index0 x1)
+                                    (Data.Matrix.Static.Index1 x1)
+                                    4
+                                    Float)
+                                 (Data.Tensor.Static.AllIndexes
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                            (GHC.Classes.$p1(%,,%)
+                               @ (MinorMatrix
+                                    (Data.Matrix.Static.Index0 x1)
+                                    (Data.Matrix.Static.Index1 x1)
+                                    4
+                                    Float)
+                               @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                               @ (Num Float)
+                               (GHC.Classes.$p1(%,%)
+                                  @ (Minor
+                                       (Data.Matrix.Static.Index0 x1)
+                                       (Data.Matrix.Static.Index1 x1)
+                                       4
+                                       Float)
+                                  @ (Data.Matrix.Static.Sign
+                                       (Data.Matrix.Static.Index0 x1
+                                        GHC.TypeNats.+ Data.Matrix.Static.Index1 x1))
+                                  (w `cast` <Co:14>)))))
+                      `cast` <Co:16>)
+              of cobox3
+              { __DEFAULT ->
+              let {
+                $d(%,,%)
+                  :: Minor
+                       (Data.Matrix.Static.Index0 x1)
+                       (Data.Matrix.Static.Index1 x1)
+                       4
+                       Float
+                $d(%,,%)
+                  = GHC.Classes.$p1(%,%)
+                      @ (Minor
+                           (Data.Matrix.Static.Index0 x1)
+                           (Data.Matrix.Static.Index1 x1)
+                           4
+                           Float)
+                      @ (Data.Matrix.Static.Sign
+                           (Data.Matrix.Static.Index0 x1
+                            GHC.TypeNats.+ Data.Matrix.Static.Index1 x1))
+                      (w `cast` <Co:14>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                            @ (Type.List.DemoteWith
+                                 [GHC.Types.Nat]
+                                 ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                 (Data.Matrix.Static.MinorMatrixGoSym4
+                                    (Data.Matrix.Static.Index0 x1)
+                                    (Data.Matrix.Static.Index1 x1)
+                                    4
+                                    Float)
+                                 (Data.Tensor.Static.AllIndexes
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                            (GHC.Classes.$p1(%,,%)
+                               @ (MinorMatrix
+                                    (Data.Matrix.Static.Index0 x1)
+                                    (Data.Matrix.Static.Index1 x1)
+                                    4
+                                    Float)
+                               @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                               @ (Num Float)
+                               $d(%,,%))))
+                      `cast` <Co:16>)
+              of cobox
+              { __DEFAULT ->
+              let {
+                $dNum :: Num Float
+                $dNum
+                  = GHC.Classes.$p3(%,,%)
+                      @ (MinorMatrix
+                           (Data.Matrix.Static.Index0 x1)
+                           (Data.Matrix.Static.Index1 x1)
+                           4
+                           Float)
+                      @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                      @ (Num Float)
+                      $d(%,,%) } in
+              * @ Float
+                $dNum
+                (((GHC.Classes.$p2(%,%)
+                     @ (Minor
+                          (Data.Matrix.Static.Index0 x1)
+                          (Data.Matrix.Static.Index1 x1)
+                          4
+                          Float)
+                     @ (Data.Matrix.Static.Sign
+                          (Data.Matrix.Static.Index0 x1
+                           GHC.TypeNats.+ Data.Matrix.Static.Index1 x1))
+                     (w `cast` <Co:14>))
+                  `cast` <Co:6>)
+                   @ Float $dNum)
+                (let {
+                   $d(%,%)1
+                     :: MinorMatrix
+                          (Data.Matrix.Static.Index0 x1)
+                          (Data.Matrix.Static.Index1 x1)
+                          4
+                          Float
+                   $d(%,%)1
+                     = GHC.Classes.$p1(%,,%)
+                         @ (MinorMatrix
+                              (Data.Matrix.Static.Index0 x1)
+                              (Data.Matrix.Static.Index1 x1)
+                              4
+                              Float)
+                         @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                         @ (Num Float)
+                         $d(%,,%) } in
+                 case GHC.Types.HEq_sc
+                        @ Bool
+                        @ Bool
+                        @ (Data.Tensor.Static.PositiveDims
+                             '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                        @ 'True
+                        ((Data.Tensor.Static.$p1IsTensor
+                            @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                            @ Float
+                            (GHC.Classes.$p1(%,%)
+                               @ (Data.Tensor.Static.IsTensor
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                               @ (Type.List.DemoteWith
+                                    [GHC.Types.Nat]
+                                    ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                    (Data.Matrix.Static.MinorMatrixGoSym4
+                                       (Data.Matrix.Static.Index0 x1)
+                                       (Data.Matrix.Static.Index1 x1)
+                                       4
+                                       Float)
+                                    (Data.Tensor.Static.AllIndexes
+                                       '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                               $d(%,%)1))
+                         `cast` <Co:16>)
+                 of cobox1
+                 { __DEFAULT ->
+                 ((GHC.Classes.$p2(%,,%)
+                     @ (MinorMatrix
+                          (Data.Matrix.Static.Index0 x1)
+                          (Data.Matrix.Static.Index1 x1)
+                          4
+                          Float)
+                     @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                     @ (Num Float)
+                     $d(%,,%))
+                  `cast` <Co:5>)
+                   $dNum
+                   (let {
+                      $dIsTensor
+                        :: Data.Tensor.Static.IsTensor
+                             '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float
+                      $dIsTensor
+                        = GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                            @ (Type.List.DemoteWith
+                                 [GHC.Types.Nat]
+                                 ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                 (Data.Matrix.Static.MinorMatrixGoSym4
+                                    (Data.Matrix.Static.Index0 x1)
+                                    (Data.Matrix.Static.Index1 x1)
+                                    4
+                                    Float)
+                                 (Data.Tensor.Static.AllIndexes
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                            $d(%,%)1 } in
+                    case GHC.Types.HEq_sc
+                           @ Bool
+                           @ Bool
+                           @ (Data.Tensor.Static.PositiveDims
+                                '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                           @ 'True
+                           ((Data.Tensor.Static.$p1IsTensor
+                               @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] @ Float $dIsTensor)
+                            `cast` <Co:16>)
+                    of cobox4
+                    { __DEFAULT ->
+                    Data.Tensor.Static.unsafeFromList
+                      @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                      @ Float
+                      $dIsTensor
+                      (((GHC.Classes.$p2(%,%)
+                           @ (Data.Tensor.Static.IsTensor
+                                '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                           @ (Type.List.DemoteWith
+                                [GHC.Types.Nat]
+                                ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                (Data.Matrix.Static.MinorMatrixGoSym4
+                                   (Data.Matrix.Static.Index0 x1)
+                                   (Data.Matrix.Static.Index1 x1)
+                                   4
+                                   Float)
+                                (Data.Tensor.Static.AllIndexes
+                                   '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                           $d(%,%)1)
+                        `cast` <Co:27>)
+                         @ Float (lvl @ x1))
+                    })
+                 })
+              }
+              }
+              } } in
+      case $wf
+             @ '[0, 0]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith229
+              `cast` <Co:3038>)
+      of
+      { GHC.Types.F# dt1 ->
+      case $wf
+             @ '[0, 1]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith216
+              `cast` <Co:3038>)
+      of
+      { GHC.Types.F# dt3 ->
+      case $wf
+             @ '[0, 2]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith203
+              `cast` <Co:3038>)
+      of
+      { GHC.Types.F# dt5 ->
+      case $wf
+             @ '[0, 3]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith190
+              `cast` <Co:3038>)
+      of
+      { GHC.Types.F# dt7 ->
+      case $wf
+             @ '[1, 0]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith186
+              `cast` <Co:3038>)
+      of
+      { GHC.Types.F# dt9 ->
+      case $wf
+             @ '[1, 1]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith173
+              `cast` <Co:3039>)
+      of
+      { GHC.Types.F# dt11 ->
+      case $wf
+             @ '[1, 2]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith160
+              `cast` <Co:3039>)
+      of
+      { GHC.Types.F# dt13 ->
+      case $wf
+             @ '[1, 3]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith147
+              `cast` <Co:3039>)
+      of
+      { GHC.Types.F# dt15 ->
+      case $wf
+             @ '[2, 0]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith143
+              `cast` <Co:3038>)
+      of
+      { GHC.Types.F# dt17 ->
+      case $wf
+             @ '[2, 1]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith130
+              `cast` <Co:3039>)
+      of
+      { GHC.Types.F# dt19 ->
+      case $wf
+             @ '[2, 2]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith117
+              `cast` <Co:3039>)
+      of
+      { GHC.Types.F# dt21 ->
+      case $wf
+             @ '[2, 3]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith85
+              `cast` <Co:3039>)
+      of
+      { GHC.Types.F# dt23 ->
+      case $wf
+             @ '[3, 0]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith69
+              `cast` <Co:3038>)
+      of
+      { GHC.Types.F# dt25 ->
+      case $wf
+             @ '[3, 1]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith56
+              `cast` <Co:3039>)
+      of
+      { GHC.Types.F# dt27 ->
+      case $wf
+             @ '[3, 2]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith43
+              `cast` <Co:3039>)
+      of
+      { GHC.Types.F# dt29 ->
+      case $wf
+             @ '[3, 3]
+             (CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:3039>)
+      of
+      { GHC.Types.F# dt31 ->
+      (TensorInstances.Tensor'4'4'Float
+         dt1
+         dt3
+         dt5
+         dt7
+         dt9
+         dt11
+         dt13
+         dt15
+         dt17
+         dt19
+         dt21
+         dt23
+         dt25
+         dt27
+         dt29
+         dt31)
+      `cast` <Co:2>
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+
+
+------ Local rules for imported ids --------
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith2
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith4
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith6
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith8
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith10
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith12
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith14
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith16
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith30
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith32
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith46
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith47
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith48
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith59
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith60
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith61
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith34
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith36
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith50
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith62
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith63
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith64
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith38
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith40
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith52
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith54
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith65
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith66
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              3
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith67
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith72
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith88
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith97
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith74
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith89
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith98
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith76
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith78
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith80
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith81
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith82
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith83
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith90
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith91
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith92
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith93
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith94
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith95
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith96
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith99
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith100
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith101
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith102
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith103
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith104
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              3
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith105
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith106
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith108
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith109
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith110
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith111
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith112
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith113
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith115
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith120
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith121
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith122
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith123
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith124
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith125
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith126
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith127
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith128
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith133
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith134
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith135
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith136
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith137
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith138
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith139
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith140
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              2
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith141
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith150
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith151
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith152
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith153
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith154
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith155
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith156
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith157
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith158
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith163
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith164
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith165
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith166
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith167
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith168
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith169
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith170
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith171
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith176
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith177
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith178
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith179
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith180
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith181
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith182
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith183
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              1
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith184
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith193
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith194
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith195
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith196
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith197
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith198
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith199
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith200
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              2
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith201
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith206
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith207
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith208
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith209
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith210
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith211
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith212
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith213
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              1
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith214
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '[] @ '[2,
+                                                                                                               2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith219
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith220
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[2,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith221
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith222
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith223
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[1,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith224
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith225
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith226
+"SPEC/CoreDump.Matrix.CofactorMatrix $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                                     [Nat]
+                                                                                     Constraint
+                                                                                   -> *) @ (MinorMatrixGoSym4
+                                                                                              0
+                                                                                              0
+                                                                                              4
+                                                                                              Float) @ '['[0,
+                                                                                                           1],
+                                                                                                         '[0,
+                                                                                                           2],
+                                                                                                         '[1,
+                                                                                                           0],
+                                                                                                         '[1,
+                                                                                                           1],
+                                                                                                         '[1,
+                                                                                                           2],
+                                                                                                         '[2,
+                                                                                                           0],
+                                                                                                         '[2,
+                                                                                                           1],
+                                                                                                         '[2,
+                                                                                                           2]] @ '[0,
+                                                                                                                   0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith227
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'True,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False,
+                                                                               'True, 'False,
+                                                                               'False, 'False,
+                                                                               'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False, 'False,
+                                                                                'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.CofactorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                                'False, 'False,
+                                                                                'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.CofactorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+
+ tests/CoreDump/Matrix/CofactorMatrix.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.CofactorMatrix where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+-- FIXME: Generates terrible Core.
+cofactorMatrix_ :: Matrix 4 4 Float -> Matrix 4 4 Float
+cofactorMatrix_ = cofactorMatrix
+ tests/CoreDump/Matrix/ColOver.dump-simpl.ghc821.golden view
@@ -0,0 +1,69 @@+
+==================== Tidy Core ====================
+2017-09-08 01:39:01.0346075 UTC
+
+Result size of Tidy Core
+  = {terms: 45, types: 51, coercions: 6, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColOver.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.ColOver.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColOver.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.ColOver.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.ColOver.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColOver.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.ColOver.$trModule2 = "CoreDump.Matrix.ColOver"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColOver.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.ColOver.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.ColOver.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColOver.$trModule :: GHC.Types.Module
+CoreDump.Matrix.ColOver.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.ColOver.$trModule3
+      CoreDump.Matrix.ColOver.$trModule1
+
+-- RHS size: {terms: 30, types: 32, coercions: 6, joins: 0/0}
+colOver_
+  :: (Vector 4 Float -> Vector 4 Float)
+     -> Matrix 4 4 Float -> Matrix 4 4 Float
+colOver_
+  = \ (f :: Vector 4 Float -> Vector 4 Float)
+      (eta :: Matrix 4 4 Float) ->
+      case eta `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 ->
+      case (f ((TensorInstances.Tensor'4'Float dt2 dt6 dt10 dt14)
+               `cast` <Co:2>))
+           `cast` <Co:1>
+      of
+      { TensorInstances.Tensor'4'Float dt16 dt17 dt18 dt19 ->
+      (TensorInstances.Tensor'4'4'Float
+         dt
+         dt1
+         dt16
+         dt3
+         dt4
+         dt5
+         dt17
+         dt7
+         dt8
+         dt9
+         dt18
+         dt11
+         dt12
+         dt13
+         dt19
+         dt15)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Matrix/ColOver.hs view
@@ -0,0 +1,12 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.ColOver where
+
+import Control.Lens
+import Data.Matrix.Static
+import Data.Vector.Static
+import TensorInstances ()
+
+colOver_ :: (Vector 4 Float -> Vector 4 Float) -> Matrix 4 4 Float -> Matrix 4 4 Float
+colOver_ f = over (col @2) f
+ tests/CoreDump/Matrix/ColSet.dump-simpl.ghc821.golden view
@@ -0,0 +1,47 @@+
+==================== Tidy Core ====================
+2017-09-08 01:39:00.7882055 UTC
+
+Result size of Tidy Core
+  = {terms: 36, types: 40, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColSet.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.ColSet.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColSet.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.ColSet.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.ColSet.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColSet.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.ColSet.$trModule2 = "CoreDump.Matrix.ColSet"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColSet.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.ColSet.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.ColSet.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColSet.$trModule :: GHC.Types.Module
+CoreDump.Matrix.ColSet.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.ColSet.$trModule3 CoreDump.Matrix.ColSet.$trModule1
+
+-- RHS size: {terms: 21, types: 24, coercions: 4, joins: 0/0}
+colSet_ :: Vector 3 Float -> Matrix 3 4 Float -> Matrix 3 4 Float
+colSet_
+  = \ (v :: Vector 3 Float) (eta :: Matrix 3 4 Float) ->
+      case eta `cast` <Co:1> of
+      { TensorInstances.Tensor'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 ->
+      case v `cast` <Co:1> of
+      { TensorInstances.Tensor'3'Float dt16 dt17 dt18 ->
+      (TensorInstances.Tensor'3'4'Float
+         dt dt16 dt2 dt3 dt4 dt17 dt6 dt7 dt8 dt18 dt10 dt11)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Matrix/ColSet.hs view
@@ -0,0 +1,12 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.ColSet where
+
+import Control.Lens
+import Data.Matrix.Static
+import Data.Vector.Static
+import TensorInstances ()
+
+colSet_ :: Vector 3 Float -> Matrix 3 4 Float -> Matrix 3 4 Float
+colSet_ v = set (col @1) v
+ tests/CoreDump/Matrix/ColView.dump-simpl.ghc821.golden view
@@ -0,0 +1,43 @@+
+==================== Tidy Core ====================
+2017-09-08 01:39:00.5569984 UTC
+
+Result size of Tidy Core
+  = {terms: 24, types: 39, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColView.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.ColView.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColView.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.ColView.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.ColView.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColView.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.ColView.$trModule2 = "CoreDump.Matrix.ColView"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColView.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.ColView.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.ColView.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.ColView.$trModule :: GHC.Types.Module
+CoreDump.Matrix.ColView.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.ColView.$trModule3
+      CoreDump.Matrix.ColView.$trModule1
+
+-- RHS size: {terms: 9, types: 27, coercions: 3, joins: 0/0}
+colView_ :: Matrix 4 4 Float -> Vector 4 Float
+colView_
+  = \ (s1 :: Data.Tensor.Static.Tensor '[4, 4] Float) ->
+      case s1 `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 ->
+      (TensorInstances.Tensor'4'Float dt dt4 dt8 dt12) `cast` <Co:2>
+      }
+
+
+ tests/CoreDump/Matrix/ColView.hs view
@@ -0,0 +1,12 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.ColView where
+
+import Control.Lens
+import Data.Matrix.Static
+import Data.Vector.Static
+import TensorInstances ()
+
+colView_ :: Matrix 4 4 Float -> Vector 4 Float
+colView_ = view (col @0)
+ tests/CoreDump/Matrix/Determinant.dump-simpl.ghc821.golden view
@@ -0,0 +1,4441 @@+
+==================== Tidy Core ====================
+2017-09-12 21:52:03.4114899 UTC
+
+Result size of Tidy Core
+  = {terms: 1,867, types: 5,809, coercions: 336,869, joins: 0/8}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.Determinant.$trModule2
+  = "CoreDump.Matrix.Determinant"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.Determinant.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.Determinant.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.Determinant.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.Determinant.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.Determinant.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$trModule :: GHC.Types.Module
+CoreDump.Matrix.Determinant.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.Determinant.$trModule3
+      CoreDump.Matrix.Determinant.$trModule1
+
+-- RHS size: {terms: 10, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 -> GHC.Types.: @ e x (GHC.Types.[] @ e)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True])
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 8, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 -> GHC.Types.[] @ e
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False])
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False])
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False])
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith45
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith45
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 412,
+              types: 1,845,
+              coercions: 336,245,
+              joins: 0/8}
+determinant_ :: Matrix 4 4 Float -> Float
+determinant_
+  = \ (m :: Matrix 4 4 Float) ->
+      case m `cast` <Co:1> of wild
+      { TensorInstances.Tensor'4'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 ->
+      let {
+        $wf
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+               x1 =>
+             Float
+        $wf
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index1 x1)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index1 x1)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:141>)))
+                      `cast` <Co:12>)
+              of cobox15
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index1 x1)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:18>)))
+                      `cast` <Co:12>)
+              of cobox16
+              { __DEFAULT ->
+              let {
+                $dIsTensor2 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor2
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index0 x1),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index1 x1)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:18>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor2)
+                      `cast` <Co:12>)
+              of cobox18
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index0 x1),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index1 x1)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:18>))
+                    `cast` <Co:32>)
+                     @ Float
+                     (Data.Tensor.Static.toList
+                        @ '[4, 4] @ Float $dIsTensor2 (wild `cast` <Co:2>))
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x ds1 -> x
+              }
+              }
+              }
+              } } in
+      case $wf
+             @ '[0, 0]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+              `cast` <Co:9265>)
+      of
+      { GHC.Types.F# dt17 ->
+      case $wf
+             @ '[0, 1]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+              `cast` <Co:9267>)
+      of
+      { GHC.Types.F# dt19 ->
+      case $wf
+             @ '[0, 2]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+              `cast` <Co:9267>)
+      of
+      { GHC.Types.F# dt21 ->
+      case $wf
+             @ '[1, 0]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+              `cast` <Co:9267>)
+      of
+      { GHC.Types.F# dt23 ->
+      case $wf
+             @ '[1, 1]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+              `cast` <Co:9269>)
+      of
+      { GHC.Types.F# dt25 ->
+      case $wf
+             @ '[1, 2]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9269>)
+      of
+      { GHC.Types.F# dt27 ->
+      case $wf
+             @ '[2, 0]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9267>)
+      of
+      { GHC.Types.F# dt29 ->
+      case $wf
+             @ '[2, 1]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9269>)
+      of
+      { GHC.Types.F# dt31 ->
+      case $wf
+             @ '[2, 2]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9269>)
+      of
+      { GHC.Types.F# dt33 ->
+      let {
+        $wf1
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+               x1 =>
+             Float
+        $wf1
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        1 (Data.Matrix.Static.Index1 x1)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           1 (Data.Matrix.Static.Index1 x1)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:141>)))
+                      `cast` <Co:12>)
+              of cobox15
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        1 (Data.Matrix.Static.Index1 x1)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:18>)))
+                      `cast` <Co:12>)
+              of cobox16
+              { __DEFAULT ->
+              let {
+                $dIsTensor2 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor2
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index0 x1),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  1 (Data.Matrix.Static.Index1 x1)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:18>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor2)
+                      `cast` <Co:12>)
+              of cobox18
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index0 x1),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   1 (Data.Matrix.Static.Index1 x1)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:18>))
+                    `cast` <Co:32>)
+                     @ Float
+                     (Data.Tensor.Static.toList
+                        @ '[4, 4] @ Float $dIsTensor2 (wild `cast` <Co:2>))
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x ds1 -> x
+              }
+              }
+              }
+              } } in
+      case $wf1
+             @ '[0, 0]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith45
+              `cast` <Co:9307>)
+      of
+      { GHC.Types.F# dt35 ->
+      case $wf1
+             @ '[0, 1]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+              `cast` <Co:9337>)
+      of
+      { GHC.Types.F# dt37 ->
+      case $wf1
+             @ '[0, 2]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+              `cast` <Co:9337>)
+      of
+      { GHC.Types.F# dt39 ->
+      case $wf1
+             @ '[1, 0]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+              `cast` <Co:9309>)
+      of
+      { GHC.Types.F# dt41 ->
+      case $wf1
+             @ '[1, 1]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+              `cast` <Co:9339>)
+      of
+      { GHC.Types.F# dt43 ->
+      case $wf1
+             @ '[1, 2]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9339>)
+      of
+      { GHC.Types.F# dt45 ->
+      case $wf1
+             @ '[2, 0]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9309>)
+      of
+      { GHC.Types.F# dt47 ->
+      case $wf1
+             @ '[2, 1]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9339>)
+      of
+      { GHC.Types.F# dt49 ->
+      case $wf1
+             @ '[2, 2]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9339>)
+      of
+      { GHC.Types.F# dt51 ->
+      let {
+        $wf2
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+               x1 =>
+             Float
+        $wf2
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        2 (Data.Matrix.Static.Index1 x1)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           2 (Data.Matrix.Static.Index1 x1)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:141>)))
+                      `cast` <Co:12>)
+              of cobox15
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        2 (Data.Matrix.Static.Index1 x1)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:18>)))
+                      `cast` <Co:12>)
+              of cobox16
+              { __DEFAULT ->
+              let {
+                $dIsTensor2 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor2
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index0 x1),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  2 (Data.Matrix.Static.Index1 x1)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:18>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor2)
+                      `cast` <Co:12>)
+              of cobox18
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index0 x1),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   2 (Data.Matrix.Static.Index1 x1)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:18>))
+                    `cast` <Co:32>)
+                     @ Float
+                     (Data.Tensor.Static.toList
+                        @ '[4, 4] @ Float $dIsTensor2 (wild `cast` <Co:2>))
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x ds1 -> x
+              }
+              }
+              }
+              } } in
+      case $wf2
+             @ '[0, 0]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith45
+              `cast` <Co:9307>)
+      of
+      { GHC.Types.F# dt53 ->
+      case $wf2
+             @ '[0, 1]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+              `cast` <Co:9327>)
+      of
+      { GHC.Types.F# dt55 ->
+      case $wf2
+             @ '[0, 2]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+              `cast` <Co:9337>)
+      of
+      { GHC.Types.F# dt57 ->
+      case $wf2
+             @ '[1, 0]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+              `cast` <Co:9309>)
+      of
+      { GHC.Types.F# dt59 ->
+      case $wf2
+             @ '[1, 1]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+              `cast` <Co:9329>)
+      of
+      { GHC.Types.F# dt61 ->
+      case $wf2
+             @ '[1, 2]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9339>)
+      of
+      { GHC.Types.F# dt63 ->
+      case $wf2
+             @ '[2, 0]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9309>)
+      of
+      { GHC.Types.F# dt65 ->
+      case $wf2
+             @ '[2, 1]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9329>)
+      of
+      { GHC.Types.F# dt67 ->
+      case $wf2
+             @ '[2, 2]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9339>)
+      of
+      { GHC.Types.F# dt69 ->
+      let {
+        $wf3
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+               x1 =>
+             Float
+        $wf3
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        3 (Data.Matrix.Static.Index1 x1)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           3 (Data.Matrix.Static.Index1 x1)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:141>)))
+                      `cast` <Co:12>)
+              of cobox15
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        3 (Data.Matrix.Static.Index1 x1)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:18>)))
+                      `cast` <Co:12>)
+              of cobox16
+              { __DEFAULT ->
+              let {
+                $dIsTensor2 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor2
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index0 x1),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  3 (Data.Matrix.Static.Index1 x1)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:18>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor2)
+                      `cast` <Co:12>)
+              of cobox18
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index0 x1),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   3 (Data.Matrix.Static.Index1 x1)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:18>))
+                    `cast` <Co:32>)
+                     @ Float
+                     (Data.Tensor.Static.toList
+                        @ '[4, 4] @ Float $dIsTensor2 (wild `cast` <Co:2>))
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x ds1 -> x
+              }
+              }
+              }
+              } } in
+      case $wf3
+             @ '[0, 0]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith45
+              `cast` <Co:9307>)
+      of
+      { GHC.Types.F# dt71 ->
+      case $wf3
+             @ '[0, 1]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+              `cast` <Co:9327>)
+      of
+      { GHC.Types.F# dt73 ->
+      case $wf3
+             @ '[0, 2]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+              `cast` <Co:9327>)
+      of
+      { GHC.Types.F# dt75 ->
+      case $wf3
+             @ '[1, 0]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+              `cast` <Co:9309>)
+      of
+      { GHC.Types.F# dt77 ->
+      case $wf3
+             @ '[1, 1]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+              `cast` <Co:9329>)
+      of
+      { GHC.Types.F# dt79 ->
+      case $wf3
+             @ '[1, 2]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+              `cast` <Co:9329>)
+      of
+      { GHC.Types.F# dt81 ->
+      case $wf3
+             @ '[2, 0]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9309>)
+      of
+      { GHC.Types.F# dt83 ->
+      case $wf3
+             @ '[2, 1]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9329>)
+      of
+      { GHC.Types.F# dt85 ->
+      case $wf3
+             @ '[2, 2]
+             (CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9329>)
+      of
+      { GHC.Types.F# dt87 ->
+      GHC.Types.F#
+        (GHC.Prim.plusFloat#
+           (GHC.Prim.timesFloat#
+              dt
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.minusFloat#
+                    (GHC.Prim.timesFloat#
+                       dt17
+                       (GHC.Prim.minusFloat#
+                          (GHC.Prim.timesFloat# dt25 dt33) (GHC.Prim.timesFloat# dt27 dt31)))
+                    (GHC.Prim.timesFloat#
+                       dt19
+                       (GHC.Prim.minusFloat#
+                          (GHC.Prim.timesFloat# dt23 dt33)
+                          (GHC.Prim.timesFloat# dt27 dt29))))
+                 (GHC.Prim.timesFloat#
+                    dt21
+                    (GHC.Prim.minusFloat#
+                       (GHC.Prim.timesFloat# dt23 dt31)
+                       (GHC.Prim.timesFloat# dt25 dt29)))))
+           (GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat#
+                 (GHC.Prim.timesFloat# -1.0# dt1)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.minusFloat#
+                       (GHC.Prim.timesFloat#
+                          dt35
+                          (GHC.Prim.minusFloat#
+                             (GHC.Prim.timesFloat# dt43 dt51) (GHC.Prim.timesFloat# dt45 dt49)))
+                       (GHC.Prim.timesFloat#
+                          dt37
+                          (GHC.Prim.minusFloat#
+                             (GHC.Prim.timesFloat# dt41 dt51)
+                             (GHC.Prim.timesFloat# dt45 dt47))))
+                    (GHC.Prim.timesFloat#
+                       dt39
+                       (GHC.Prim.minusFloat#
+                          (GHC.Prim.timesFloat# dt41 dt49)
+                          (GHC.Prim.timesFloat# dt43 dt47)))))
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat#
+                    dt2
+                    (GHC.Prim.plusFloat#
+                       (GHC.Prim.minusFloat#
+                          (GHC.Prim.timesFloat#
+                             dt53
+                             (GHC.Prim.minusFloat#
+                                (GHC.Prim.timesFloat# dt61 dt69) (GHC.Prim.timesFloat# dt63 dt67)))
+                          (GHC.Prim.timesFloat#
+                             dt55
+                             (GHC.Prim.minusFloat#
+                                (GHC.Prim.timesFloat# dt59 dt69)
+                                (GHC.Prim.timesFloat# dt63 dt65))))
+                       (GHC.Prim.timesFloat#
+                          dt57
+                          (GHC.Prim.minusFloat#
+                             (GHC.Prim.timesFloat# dt59 dt67)
+                             (GHC.Prim.timesFloat# dt61 dt65)))))
+                 (GHC.Prim.timesFloat#
+                    (GHC.Prim.timesFloat# -1.0# dt3)
+                    (GHC.Prim.plusFloat#
+                       (GHC.Prim.minusFloat#
+                          (GHC.Prim.timesFloat#
+                             dt71
+                             (GHC.Prim.minusFloat#
+                                (GHC.Prim.timesFloat# dt79 dt87) (GHC.Prim.timesFloat# dt81 dt85)))
+                          (GHC.Prim.timesFloat#
+                             dt73
+                             (GHC.Prim.minusFloat#
+                                (GHC.Prim.timesFloat# dt77 dt87)
+                                (GHC.Prim.timesFloat# dt81 dt83))))
+                       (GHC.Prim.timesFloat#
+                          dt75
+                          (GHC.Prim.minusFloat#
+                             (GHC.Prim.timesFloat# dt77 dt85)
+                             (GHC.Prim.timesFloat# dt79 dt83))))))))
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+
+
+------ Local rules for imported ids --------
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False,
+                                                                             'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False, 'False,
+                                                                             'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False, 'False,
+                                                                             'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+"SPEC/CoreDump.Matrix.Determinant $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Determinant.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+
+ tests/CoreDump/Matrix/Determinant.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.Determinant where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+-- FIXME: Generates terrible Core.
+determinant_ :: Matrix 4 4 Float -> Float
+determinant_ = determinant
+ tests/CoreDump/Matrix/GetColElems.dump-simpl.ghc821.golden view
@@ -0,0 +1,53 @@+
+==================== Tidy Core ====================
+2017-09-08 01:38:45.1889483 UTC
+
+Result size of Tidy Core
+  = {terms: 32, types: 37, coercions: 1, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.GetColElems.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.GetColElems.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.GetColElems.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.GetColElems.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.GetColElems.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.GetColElems.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.GetColElems.$trModule2
+  = "CoreDump.Matrix.GetColElems"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.GetColElems.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.GetColElems.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.GetColElems.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.GetColElems.$trModule :: GHC.Types.Module
+CoreDump.Matrix.GetColElems.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.GetColElems.$trModule3
+      CoreDump.Matrix.GetColElems.$trModule1
+
+-- RHS size: {terms: 17, types: 26, coercions: 1, joins: 0/0}
+getColElems_ :: Matrix 4 4 Float -> [Float]
+getColElems_
+  = \ (w :: Matrix 4 4 Float) ->
+      case w `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float ww1 ww2 ww3 ww4 ww5 ww6 ww7 ww8
+                                         ww9 ww10 ww11 ww12 ww13 ww14 ww15 ww16 ->
+      GHC.Types.:
+        @ Float
+        (GHC.Types.F# ww4)
+        (GHC.Types.:
+           @ Float
+           (GHC.Types.F# ww8)
+           (GHC.Types.:
+              @ Float
+              (GHC.Types.F# ww12)
+              (GHC.Types.: @ Float (GHC.Types.F# ww16) (GHC.Types.[] @ Float))))
+      }
+
+
+ tests/CoreDump/Matrix/GetColElems.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.GetColElems where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+getColElems_ :: Matrix 4 4 Float -> [Float]
+getColElems_ = getColElems @3
+ tests/CoreDump/Matrix/GetRowElems.dump-simpl.ghc821.golden view
@@ -0,0 +1,53 @@+
+==================== Tidy Core ====================
+2017-09-08 01:38:45.0489403 UTC
+
+Result size of Tidy Core
+  = {terms: 32, types: 37, coercions: 1, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.GetRowElems.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.GetRowElems.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.GetRowElems.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.GetRowElems.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.GetRowElems.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.GetRowElems.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.GetRowElems.$trModule2
+  = "CoreDump.Matrix.GetRowElems"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.GetRowElems.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.GetRowElems.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.GetRowElems.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.GetRowElems.$trModule :: GHC.Types.Module
+CoreDump.Matrix.GetRowElems.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.GetRowElems.$trModule3
+      CoreDump.Matrix.GetRowElems.$trModule1
+
+-- RHS size: {terms: 17, types: 26, coercions: 1, joins: 0/0}
+getRowElems_ :: Matrix 4 4 Float -> [Float]
+getRowElems_
+  = \ (w :: Matrix 4 4 Float) ->
+      case w `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float ww1 ww2 ww3 ww4 ww5 ww6 ww7 ww8
+                                         ww9 ww10 ww11 ww12 ww13 ww14 ww15 ww16 ->
+      GHC.Types.:
+        @ Float
+        (GHC.Types.F# ww13)
+        (GHC.Types.:
+           @ Float
+           (GHC.Types.F# ww14)
+           (GHC.Types.:
+              @ Float
+              (GHC.Types.F# ww15)
+              (GHC.Types.: @ Float (GHC.Types.F# ww16) (GHC.Types.[] @ Float))))
+      }
+
+
+ tests/CoreDump/Matrix/GetRowElems.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.GetRowElems where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+getRowElems_ :: Matrix 4 4 Float -> [Float]
+getRowElems_ = getRowElems @3
+ tests/CoreDump/Matrix/Identity.dump-simpl.ghc821.golden view
@@ -0,0 +1,59 @@+
+==================== Tidy Core ====================
+2017-09-08 01:38:44.902932 UTC
+
+Result size of Tidy Core
+  = {terms: 34, types: 10, coercions: 2, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Identity.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.Identity.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Identity.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.Identity.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.Identity.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Identity.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.Identity.$trModule2 = "CoreDump.Matrix.Identity"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Identity.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.Identity.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.Identity.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Identity.$trModule :: GHC.Types.Module
+CoreDump.Matrix.Identity.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.Identity.$trModule3
+      CoreDump.Matrix.Identity.$trModule1
+
+-- RHS size: {terms: 17, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Identity.identity_1
+  :: TensorInstances.R:Tensor:Float13
+CoreDump.Matrix.Identity.identity_1
+  = TensorInstances.Tensor'4'4'Float
+      1.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      1.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      1.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      1.0#
+
+-- RHS size: {terms: 1, types: 0, coercions: 2, joins: 0/0}
+identity_ :: Matrix 4 4 Float
+identity_ = CoreDump.Matrix.Identity.identity_1 `cast` <Co:2>
+
+
+ tests/CoreDump/Matrix/Identity.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.Identity where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+identity_ :: Matrix 4 4 Float
+identity_ = identity
+ tests/CoreDump/Matrix/Inverse.dump-simpl.ghc821.golden view
@@ -0,0 +1,18465 @@+
+==================== Tidy Core ====================
+2017-09-13 23:45:23.8355562 UTC
+
+Result size of Tidy Core
+  = {terms: 4,371, types: 45,164, coercions: 1,650,546, joins: 0/25}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.Inverse.$trModule2 = "CoreDump.Matrix.Inverse"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.Inverse.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.Inverse.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.Inverse.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.Inverse.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.Inverse.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$trModule :: GHC.Types.Module
+CoreDump.Matrix.Inverse.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.Inverse.$trModule3
+      CoreDump.Matrix.Inverse.$trModule1
+
+-- RHS size: {terms: 3, types: 1, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+  :: Num Float => Matrix 3 3 Float -> Float
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+  = Data.Matrix.Static.$fDeterminant3e_$cdeterminant
+      @ Float GHC.Float.$fNumFloat TensorInstances.$fIsTensor:Float3
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith26
+  :: Integer
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith26 = 1
+
+-- RHS size: {terms: 12, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+  :: forall a. Num a => a
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith26))
+        (fromInteger
+           @ a
+           $dNum
+           CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith26)
+
+-- RHS size: {terms: 11, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+  :: forall a. Num a => a
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith26))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+           @ a $dNum)
+
+-- RHS size: {terms: 11, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+  :: forall a. Num a => a
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith26))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+           @ a $dNum)
+
+-- RHS size: {terms: 11, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+  :: forall a. Num a => a
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith26))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+           @ a $dNum)
+
+-- RHS size: {terms: 11, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+  :: forall a. Num a => a
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith26))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+           @ a $dNum)
+
+-- RHS size: {terms: 11, types: 8, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith20
+  :: forall a. Num a => a
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith20
+  = \ (@ a) ($dNum :: Num a) ->
+      * @ a
+        $dNum
+        (negate
+           @ a
+           $dNum
+           (fromInteger
+              @ a
+              $dNum
+              CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith26))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+           @ a $dNum)
+
+-- RHS size: {terms: 1, types: 8, coercions: 2, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$d~~
+  :: ('[] :: [GHC.Types.Nat]) ~~ ('[] :: [GHC.Types.Nat])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$d~~
+  = GHC.Types.Eq#
+      @ [GHC.Types.Nat] @ [GHC.Types.Nat] @ '[] @ '[] @~ <Co:2>
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl :: GHC.Prim.Addr#
+lvl = "error"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl1 :: [Char]
+lvl1 = GHC.CString.unpackCString# lvl
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl2 :: GHC.Prim.Addr#
+lvl2 = "static-tensor-0.1.0.0-1bgjq3JOZMoDpQl5pqUrpL"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl3 :: [Char]
+lvl3 = GHC.CString.unpackCString# lvl2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl4 :: GHC.Prim.Addr#
+lvl4 = "Data.Tensor.Static"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl5 :: [Char]
+lvl5 = GHC.CString.unpackCString# lvl4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl6 :: GHC.Prim.Addr#
+lvl6 = "src\\Data\\Tensor\\Static.hs"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl7 :: [Char]
+lvl7 = GHC.CString.unpackCString# lvl6
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl8 :: Int
+lvl8 = GHC.Types.I# 871#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl9 :: Int
+lvl9 = GHC.Types.I# 5#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl10 :: Int
+lvl10 = GHC.Types.I# 91#
+
+-- RHS size: {terms: 8, types: 0, coercions: 0, joins: 0/0}
+lvl11 :: GHC.Stack.Types.SrcLoc
+lvl11 = GHC.Stack.Types.SrcLoc lvl3 lvl5 lvl7 lvl8 lvl9 lvl8 lvl10
+
+-- RHS size: {terms: 4, types: 0, coercions: 0, joins: 0/0}
+lvl12 :: GHC.Stack.Types.CallStack
+lvl12
+  = GHC.Stack.Types.PushCallStack
+      lvl1 lvl11 GHC.Stack.Types.EmptyCallStack
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl13 :: GHC.Prim.Addr#
+lvl13
+  = "Impossible happend! Not enough elements in the tensor. Please report this bug."#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl14 :: [Char]
+lvl14 = GHC.CString.unpackCString# lvl13
+
+-- RHS size: {terms: 4, types: 6, coercions: 4, joins: 0/0}
+lvl15 :: forall e. Maybe [e]
+lvl15
+  = \ (@ e) ->
+      error
+        @ 'GHC.Types.LiftedRep @ (Maybe [e]) (lvl12 `cast` <Co:4>) lvl14
+
+-- RHS size: {terms: 122, types: 130, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk1
+  :: forall e. [e] -> [e] -> Maybe [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) (ds1 :: [e]) ->
+      case ds of {
+        [] ->
+          Data.Tensor.Static.impossible_notEnoughTensorElems @ (Maybe [e]);
+        : x xs1 ->
+          case xs1 of {
+            [] -> lvl15 @ e;
+            : x1 xs2 ->
+              case xs2 of {
+                [] -> lvl15 @ e;
+                : ipv ipv1 ->
+                  case ds1 of {
+                    [] -> GHC.Base.Nothing @ [e];
+                    : ipv2 ipv3 ->
+                      case ipv1 of {
+                        [] -> lvl15 @ e;
+                        : x2 xs3 ->
+                          case xs3 of {
+                            [] -> lvl15 @ e;
+                            : x3 xs4 ->
+                              case xs4 of {
+                                [] -> lvl15 @ e;
+                                : x4 xs5 ->
+                                  case xs5 of {
+                                    [] -> lvl15 @ e;
+                                    : x5 xs6 ->
+                                      case xs6 of {
+                                        [] -> lvl15 @ e;
+                                        : x6 xs7 ->
+                                          case xs7 of {
+                                            [] -> lvl15 @ e;
+                                            : x7 xs8 ->
+                                              case xs8 of {
+                                                [] -> lvl15 @ e;
+                                                : x8 xs9 ->
+                                                  case xs9 of {
+                                                    [] -> lvl15 @ e;
+                                                    : x9 xs10 ->
+                                                      case xs10 of {
+                                                        [] -> lvl15 @ e;
+                                                        : x10 xs11 ->
+                                                          case xs11 of {
+                                                            [] -> lvl15 @ e;
+                                                            : x11 xs12 ->
+                                                              case xs12 of {
+                                                                [] -> lvl15 @ e;
+                                                                : x12 xs13 ->
+                                                                  case xs13 of {
+                                                                    [] -> lvl15 @ e;
+                                                                    : x13 xs14 ->
+                                                                      case xs14 of {
+                                                                        [] -> lvl15 @ e;
+                                                                        : x14 xs15 ->
+                                                                          GHC.Base.Just
+                                                                            @ [e]
+                                                                            (GHC.Types.:
+                                                                               @ e
+                                                                               x
+                                                                               (GHC.Types.:
+                                                                                  @ e
+                                                                                  x1
+                                                                                  (GHC.Types.:
+                                                                                     @ e
+                                                                                     ipv2
+                                                                                     (GHC.Types.:
+                                                                                        @ e
+                                                                                        x2
+                                                                                        (GHC.Types.:
+                                                                                           @ e
+                                                                                           x3
+                                                                                           (GHC.Types.:
+                                                                                              @ e
+                                                                                              x4
+                                                                                              (GHC.Types.:
+                                                                                                 @ e
+                                                                                                 x5
+                                                                                                 (GHC.Types.:
+                                                                                                    @ e
+                                                                                                    x6
+                                                                                                    (GHC.Types.:
+                                                                                                       @ e
+                                                                                                       x7
+                                                                                                       (GHC.Types.:
+                                                                                                          @ e
+                                                                                                          x8
+                                                                                                          (GHC.Types.:
+                                                                                                             @ e
+                                                                                                             x9
+                                                                                                             (GHC.Types.:
+                                                                                                                @ e
+                                                                                                                x10
+                                                                                                                (GHC.Types.:
+                                                                                                                   @ e
+                                                                                                                   x11
+                                                                                                                   (GHC.Types.:
+                                                                                                                      @ e
+                                                                                                                      x12
+                                                                                                                      (GHC.Types.:
+                                                                                                                         @ e
+                                                                                                                         x13
+                                                                                                                         (GHC.Types.:
+                                                                                                                            @ e
+                                                                                                                            x14
+                                                                                                                            (GHC.Types.[]
+                                                                                                                               @ e)))))))))))))))))
+                                                                      }
+                                                                  }
+                                                              }
+                                                          }
+                                                      }
+                                                  }
+                                              }
+                                          }
+                                      }
+                                  }
+                              }
+                          }
+                      }
+                  }
+              }
+          }
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith216
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.SetSliceElemsWrk
+        '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith216
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk1
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 122, types: 130, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk2
+  :: forall e. [e] -> [e] -> Maybe [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) (ds1 :: [e]) ->
+      case ds of {
+        [] ->
+          Data.Tensor.Static.impossible_notEnoughTensorElems @ (Maybe [e]);
+        : x xs1 ->
+          case xs1 of {
+            [] -> lvl15 @ e;
+            : ipv ipv1 ->
+              case ds1 of {
+                [] -> GHC.Base.Nothing @ [e];
+                : ipv2 ipv3 ->
+                  case ipv1 of {
+                    [] -> lvl15 @ e;
+                    : x1 xs2 ->
+                      case xs2 of {
+                        [] -> lvl15 @ e;
+                        : x2 xs3 ->
+                          case xs3 of {
+                            [] -> lvl15 @ e;
+                            : x3 xs4 ->
+                              case xs4 of {
+                                [] -> lvl15 @ e;
+                                : x4 xs5 ->
+                                  case xs5 of {
+                                    [] -> lvl15 @ e;
+                                    : x5 xs6 ->
+                                      case xs6 of {
+                                        [] -> lvl15 @ e;
+                                        : x6 xs7 ->
+                                          case xs7 of {
+                                            [] -> lvl15 @ e;
+                                            : x7 xs8 ->
+                                              case xs8 of {
+                                                [] -> lvl15 @ e;
+                                                : x8 xs9 ->
+                                                  case xs9 of {
+                                                    [] -> lvl15 @ e;
+                                                    : x9 xs10 ->
+                                                      case xs10 of {
+                                                        [] -> lvl15 @ e;
+                                                        : x10 xs11 ->
+                                                          case xs11 of {
+                                                            [] -> lvl15 @ e;
+                                                            : x11 xs12 ->
+                                                              case xs12 of {
+                                                                [] -> lvl15 @ e;
+                                                                : x12 xs13 ->
+                                                                  case xs13 of {
+                                                                    [] -> lvl15 @ e;
+                                                                    : x13 xs14 ->
+                                                                      case xs14 of {
+                                                                        [] -> lvl15 @ e;
+                                                                        : x14 xs15 ->
+                                                                          GHC.Base.Just
+                                                                            @ [e]
+                                                                            (GHC.Types.:
+                                                                               @ e
+                                                                               x
+                                                                               (GHC.Types.:
+                                                                                  @ e
+                                                                                  ipv2
+                                                                                  (GHC.Types.:
+                                                                                     @ e
+                                                                                     x1
+                                                                                     (GHC.Types.:
+                                                                                        @ e
+                                                                                        x2
+                                                                                        (GHC.Types.:
+                                                                                           @ e
+                                                                                           x3
+                                                                                           (GHC.Types.:
+                                                                                              @ e
+                                                                                              x4
+                                                                                              (GHC.Types.:
+                                                                                                 @ e
+                                                                                                 x5
+                                                                                                 (GHC.Types.:
+                                                                                                    @ e
+                                                                                                    x6
+                                                                                                    (GHC.Types.:
+                                                                                                       @ e
+                                                                                                       x7
+                                                                                                       (GHC.Types.:
+                                                                                                          @ e
+                                                                                                          x8
+                                                                                                          (GHC.Types.:
+                                                                                                             @ e
+                                                                                                             x9
+                                                                                                             (GHC.Types.:
+                                                                                                                @ e
+                                                                                                                x10
+                                                                                                                (GHC.Types.:
+                                                                                                                   @ e
+                                                                                                                   x11
+                                                                                                                   (GHC.Types.:
+                                                                                                                      @ e
+                                                                                                                      x12
+                                                                                                                      (GHC.Types.:
+                                                                                                                         @ e
+                                                                                                                         x13
+                                                                                                                         (GHC.Types.:
+                                                                                                                            @ e
+                                                                                                                            x14
+                                                                                                                            (GHC.Types.[]
+                                                                                                                               @ e)))))))))))))))))
+                                                                      }
+                                                                  }
+                                                              }
+                                                          }
+                                                      }
+                                                  }
+                                              }
+                                          }
+                                      }
+                                  }
+                              }
+                          }
+                      }
+                  }
+              }
+          }
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith235
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.SetSliceElemsWrk
+        '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith235
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk2
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 122, types: 130, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:0_$csetSliceElemsWrk
+  :: forall e. [e] -> [e] -> Maybe [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:0_$csetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) (ds1 :: [e]) ->
+      case ds of {
+        [] ->
+          Data.Tensor.Static.impossible_notEnoughTensorElems @ (Maybe [e]);
+        : ipv ipv1 ->
+          case ds1 of {
+            [] -> GHC.Base.Nothing @ [e];
+            : ipv2 ipv3 ->
+              case ipv1 of {
+                [] -> lvl15 @ e;
+                : x xs1 ->
+                  case xs1 of {
+                    [] -> lvl15 @ e;
+                    : x1 xs2 ->
+                      case xs2 of {
+                        [] -> lvl15 @ e;
+                        : x2 xs3 ->
+                          case xs3 of {
+                            [] -> lvl15 @ e;
+                            : x3 xs4 ->
+                              case xs4 of {
+                                [] -> lvl15 @ e;
+                                : x4 xs5 ->
+                                  case xs5 of {
+                                    [] -> lvl15 @ e;
+                                    : x5 xs6 ->
+                                      case xs6 of {
+                                        [] -> lvl15 @ e;
+                                        : x6 xs7 ->
+                                          case xs7 of {
+                                            [] -> lvl15 @ e;
+                                            : x7 xs8 ->
+                                              case xs8 of {
+                                                [] -> lvl15 @ e;
+                                                : x8 xs9 ->
+                                                  case xs9 of {
+                                                    [] -> lvl15 @ e;
+                                                    : x9 xs10 ->
+                                                      case xs10 of {
+                                                        [] -> lvl15 @ e;
+                                                        : x10 xs11 ->
+                                                          case xs11 of {
+                                                            [] -> lvl15 @ e;
+                                                            : x11 xs12 ->
+                                                              case xs12 of {
+                                                                [] -> lvl15 @ e;
+                                                                : x12 xs13 ->
+                                                                  case xs13 of {
+                                                                    [] -> lvl15 @ e;
+                                                                    : x13 xs14 ->
+                                                                      case xs14 of {
+                                                                        [] -> lvl15 @ e;
+                                                                        : x14 xs15 ->
+                                                                          GHC.Base.Just
+                                                                            @ [e]
+                                                                            (GHC.Types.:
+                                                                               @ e
+                                                                               ipv2
+                                                                               (GHC.Types.:
+                                                                                  @ e
+                                                                                  x
+                                                                                  (GHC.Types.:
+                                                                                     @ e
+                                                                                     x1
+                                                                                     (GHC.Types.:
+                                                                                        @ e
+                                                                                        x2
+                                                                                        (GHC.Types.:
+                                                                                           @ e
+                                                                                           x3
+                                                                                           (GHC.Types.:
+                                                                                              @ e
+                                                                                              x4
+                                                                                              (GHC.Types.:
+                                                                                                 @ e
+                                                                                                 x5
+                                                                                                 (GHC.Types.:
+                                                                                                    @ e
+                                                                                                    x6
+                                                                                                    (GHC.Types.:
+                                                                                                       @ e
+                                                                                                       x7
+                                                                                                       (GHC.Types.:
+                                                                                                          @ e
+                                                                                                          x8
+                                                                                                          (GHC.Types.:
+                                                                                                             @ e
+                                                                                                             x9
+                                                                                                             (GHC.Types.:
+                                                                                                                @ e
+                                                                                                                x10
+                                                                                                                (GHC.Types.:
+                                                                                                                   @ e
+                                                                                                                   x11
+                                                                                                                   (GHC.Types.:
+                                                                                                                      @ e
+                                                                                                                      x12
+                                                                                                                      (GHC.Types.:
+                                                                                                                         @ e
+                                                                                                                         x13
+                                                                                                                         (GHC.Types.:
+                                                                                                                            @ e
+                                                                                                                            x14
+                                                                                                                            (GHC.Types.[]
+                                                                                                                               @ e)))))))))))))))))
+                                                                      }
+                                                                  }
+                                                              }
+                                                          }
+                                                      }
+                                                  }
+                                              }
+                                          }
+                                      }
+                                  }
+                              }
+                          }
+                      }
+                  }
+              }
+          }
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith254
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.SetSliceElemsWrk
+        '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith254
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:0_$csetSliceElemsWrk
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 122, types: 130, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk
+  :: forall e. [e] -> [e] -> Maybe [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) (ds1 :: [e]) ->
+      case ds of {
+        [] ->
+          Data.Tensor.Static.impossible_notEnoughTensorElems @ (Maybe [e]);
+        : x xs1 ->
+          case xs1 of {
+            [] -> lvl15 @ e;
+            : x1 xs2 ->
+              case xs2 of {
+                [] -> lvl15 @ e;
+                : x2 xs3 ->
+                  case xs3 of {
+                    [] -> lvl15 @ e;
+                    : ipv ipv1 ->
+                      case ds1 of {
+                        [] -> GHC.Base.Nothing @ [e];
+                        : ipv2 ipv3 ->
+                          case ipv1 of {
+                            [] -> lvl15 @ e;
+                            : x3 xs4 ->
+                              case xs4 of {
+                                [] -> lvl15 @ e;
+                                : x4 xs5 ->
+                                  case xs5 of {
+                                    [] -> lvl15 @ e;
+                                    : x5 xs6 ->
+                                      case xs6 of {
+                                        [] -> lvl15 @ e;
+                                        : x6 xs7 ->
+                                          case xs7 of {
+                                            [] -> lvl15 @ e;
+                                            : x7 xs8 ->
+                                              case xs8 of {
+                                                [] -> lvl15 @ e;
+                                                : x8 xs9 ->
+                                                  case xs9 of {
+                                                    [] -> lvl15 @ e;
+                                                    : x9 xs10 ->
+                                                      case xs10 of {
+                                                        [] -> lvl15 @ e;
+                                                        : x10 xs11 ->
+                                                          case xs11 of {
+                                                            [] -> lvl15 @ e;
+                                                            : x11 xs12 ->
+                                                              case xs12 of {
+                                                                [] -> lvl15 @ e;
+                                                                : x12 xs13 ->
+                                                                  case xs13 of {
+                                                                    [] -> lvl15 @ e;
+                                                                    : x13 xs14 ->
+                                                                      case xs14 of {
+                                                                        [] -> lvl15 @ e;
+                                                                        : x14 xs15 ->
+                                                                          GHC.Base.Just
+                                                                            @ [e]
+                                                                            (GHC.Types.:
+                                                                               @ e
+                                                                               x
+                                                                               (GHC.Types.:
+                                                                                  @ e
+                                                                                  x1
+                                                                                  (GHC.Types.:
+                                                                                     @ e
+                                                                                     x2
+                                                                                     (GHC.Types.:
+                                                                                        @ e
+                                                                                        ipv2
+                                                                                        (GHC.Types.:
+                                                                                           @ e
+                                                                                           x3
+                                                                                           (GHC.Types.:
+                                                                                              @ e
+                                                                                              x4
+                                                                                              (GHC.Types.:
+                                                                                                 @ e
+                                                                                                 x5
+                                                                                                 (GHC.Types.:
+                                                                                                    @ e
+                                                                                                    x6
+                                                                                                    (GHC.Types.:
+                                                                                                       @ e
+                                                                                                       x7
+                                                                                                       (GHC.Types.:
+                                                                                                          @ e
+                                                                                                          x8
+                                                                                                          (GHC.Types.:
+                                                                                                             @ e
+                                                                                                             x9
+                                                                                                             (GHC.Types.:
+                                                                                                                @ e
+                                                                                                                x10
+                                                                                                                (GHC.Types.:
+                                                                                                                   @ e
+                                                                                                                   x11
+                                                                                                                   (GHC.Types.:
+                                                                                                                      @ e
+                                                                                                                      x12
+                                                                                                                      (GHC.Types.:
+                                                                                                                         @ e
+                                                                                                                         x13
+                                                                                                                         (GHC.Types.:
+                                                                                                                            @ e
+                                                                                                                            x14
+                                                                                                                            (GHC.Types.[]
+                                                                                                                               @ e)))))))))))))))))
+                                                                      }
+                                                                  }
+                                                              }
+                                                          }
+                                                      }
+                                                  }
+                                              }
+                                          }
+                                      }
+                                  }
+                              }
+                          }
+                      }
+                  }
+              }
+          }
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith111
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.SetSliceElemsWrk
+        '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith111
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 8, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 -> GHC.Types.[] @ e
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith255
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith255
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 3, types: 132, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith253
+  :: ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.GetSliceElemsWrk
+         '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+      (Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.SetSliceElemsWrk
+         '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]))
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith253
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith255,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith254)
+
+-- RHS size: {terms: 3, types: 140, coercions: 8, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith252
+  :: (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.GetSliceElemsWrk
+          '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+       (Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.SetSliceElemsWrk
+          '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+      ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat]))
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith252
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith253,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$d~~
+     `cast` <Co:8>)
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith236
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith236
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 3, types: 132, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith234
+  :: ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.GetSliceElemsWrk
+         '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+      (Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.SetSliceElemsWrk
+         '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]))
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith234
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith236,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith235)
+
+-- RHS size: {terms: 3, types: 140, coercions: 8, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith233
+  :: (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.GetSliceElemsWrk
+          '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+       (Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.SetSliceElemsWrk
+          '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+      ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat]))
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith233
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith234,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$d~~
+     `cast` <Co:8>)
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+            @ e xs1
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith217
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith217
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 3, types: 132, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith215
+  :: ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.GetSliceElemsWrk
+         '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+      (Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.SetSliceElemsWrk
+         '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]))
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith215
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith217,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith216)
+
+-- RHS size: {terms: 3, types: 140, coercions: 8, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith214
+  :: (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.GetSliceElemsWrk
+          '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+       (Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.SetSliceElemsWrk
+          '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+      ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat]))
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith214
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith215,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$d~~
+     `cast` <Co:8>)
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+            @ e xs1
+      }
+
+-- RHS size: {terms: 4, types: 66, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith112
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.IsTensor '[] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith112
+  = (TensorInstances.$fIsTensor:Float6,
+     Data.Tensor.Static.$fIsTensor[]e @ Float,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 3, types: 132, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith110
+  :: ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.GetSliceElemsWrk
+         '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+      (Data.Tensor.Static.IsTensor '[4, 4] Float,
+       Data.Tensor.Static.IsTensor '[] Float,
+       Data.Tensor.Static.SetSliceElemsWrk
+         '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+           'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]))
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith110
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith112,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith111)
+
+-- RHS size: {terms: 3, types: 140, coercions: 8, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith109
+  :: (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.GetSliceElemsWrk
+          '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+       (Data.Tensor.Static.IsTensor '[4, 4] Float,
+        Data.Tensor.Static.IsTensor '[] Float,
+        Data.Tensor.Static.SetSliceElemsWrk
+          '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+            'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+      ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat]))
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith109
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith110,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$d~~
+     `cast` <Co:8>)
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith2
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith2
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith4
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith4
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith2
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith6
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith6
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith4
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith8
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith8
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith6
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith10
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith10
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith8
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith12
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith12
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith10
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith14
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith14
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith12
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith16
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith16
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith14
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith29
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith16
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith29,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 6)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith27,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith20
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith30
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith30
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith32
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith32
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith30
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith32
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith34
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith34
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith36
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith36
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith34
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith36
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith38
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith38
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith40
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith40
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith38
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith40
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith45
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith45
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith44
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith44
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith45,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith43
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 5)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith43
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith44,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith46
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith46
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith47
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith47
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith46
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith48
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith48
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith47
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith48
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith50
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith50
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith50
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith52
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith52
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith52
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith54
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith54
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith58
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith58
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith54
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith57
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith57
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith58,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith56
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 4)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith56
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith57,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,333, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith59
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith59
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9333>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,333, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith60
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith60
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9333>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith59
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,331, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith61
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith61
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9331>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith60
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,333, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith62
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith62
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9333>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith61
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,333, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith63
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith63
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9333>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith62
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,331, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith64
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith64
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9331>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith63
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,313, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith65
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith65
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9313>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith64
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,313, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith66
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith66
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9313>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith65
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,311, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith67
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith67
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9311>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith66
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith71
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith71
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith67
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith70
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith70
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith71,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith69
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 3)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith69
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith70,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith72
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith72
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith74
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith74
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith72
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith76
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith76
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith74
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith78
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith78
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith76
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith78
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith80
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith80
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith81
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith81
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith80
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith82
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith82
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith81
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith83
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith83
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith82
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith87
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith87
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith83
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith86
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith86
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith87,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith85
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 5)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith85
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith86,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith88
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith88
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith89
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith89
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith88
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith90
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith90
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith89
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith91
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith91
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith90
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith92
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith92
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith91
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith93
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith93
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith92
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith94
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith94
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith93
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith95
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith95
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith94
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith96
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith96
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith95
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith156
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith156
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith96
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith155
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith155
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith156,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith154
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 4)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith154
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith155,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith97
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith97
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith98
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith98
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith97
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith99
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith99
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith98
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith100
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith100
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith99
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith101
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith101
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith100
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith102
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith102
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith101
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,327, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith103
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith103
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9327>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith102
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,327, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith104
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith104
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9327>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith103
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,307, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith105
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith105
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9307>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith104
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith108
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith108
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith105
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith198
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith198
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith108,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith197
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 3)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith197
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith198,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 5, types: 271, coercions: 7, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+  :: (Determinant 3 Float,
+      (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.GetSliceElemsWrk
+           '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+        (Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.SetSliceElemsWrk
+           '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+       ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat])),
+      (Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Data.Matrix.Static.Sign 3)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith109,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith108,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 10, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 -> GHC.Types.: @ e x (GHC.Types.[] @ e)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith113
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith113
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith115
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith115
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith113
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith116
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith116
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith115
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith117
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith117
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith116
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,393, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith118
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith118
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9393>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith117
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith119
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith119
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith118
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith120
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith120
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith119
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith121
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith121
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith120
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith122
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith122
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith121
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith126
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith126
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith122
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith125
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith125
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith126,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith124
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 4)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith124
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith125,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith22
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith127
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith127
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith128
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith128
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith127
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith129
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith129
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith128
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith130
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith130
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith129
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith131
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith131
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith130
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith132
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith132
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith131
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith133
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith133
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith132
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith134
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith134
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith133
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith135
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith135
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith134
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith139
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith139
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith135
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith138
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith138
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith139,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith137
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 3)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith137
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith138,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,343, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith140
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith140
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+            `cast` <Co:9343>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,343, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith141
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith141
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9343>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith140
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,341, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith142
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith142
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9341>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith141
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,333, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith143
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith143
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9333>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith142
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,333, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith144
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith144
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9333>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith143
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,331, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith145
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith145
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9331>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith144
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,313, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith146
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith146
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9313>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith145
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,313, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith147
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith147
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9313>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith146
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,311, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith148
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith148
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9311>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith147
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith152
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith152
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith148
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith151
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith151
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith152,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith150
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 2)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith150
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith151,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith157
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith157
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith158
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith158
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith157
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith159
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith159
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith158
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith160
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith160
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith159
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,403, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith161
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith161
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9403>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith160
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith162
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith162
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith161
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith163
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith163
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith162
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,373, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith164
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith164
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9373>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith163
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith165
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith165
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith164
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith169
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith169
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith165
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith168
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith168
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith169,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith167
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 3)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith167
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith168,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith170
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith170
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith171
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith171
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith170
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith172
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith172
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith171
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith173
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith173
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith172
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,413, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith174
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith174
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9413>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith173
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith175
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith175
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith174
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith176
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith176
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith175
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,383, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith177
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith177
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9383>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith176
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,353, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith178
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith178
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+            `cast` <Co:9353>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith177
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith182
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith182
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith178
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith181
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith181
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith182,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith180
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 2)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith180
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith181,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,343, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith183
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith183
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+            `cast` <Co:9343>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,343, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith184
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith184
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9343>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith183
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,341, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith185
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith185
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9341>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith184
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,343, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith186
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith186
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9343>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith185
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,343, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith187
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith187
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9343>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith186
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,341, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith188
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith188
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9341>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith187
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,313, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith189
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith189
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+            `cast` <Co:9313>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith188
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,313, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith190
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith190
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+            `cast` <Co:9313>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith189
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,311, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith191
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith191
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+            `cast` <Co:9311>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith190
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith195
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith195
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith191
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith194
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith194
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith195,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith193
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 1)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith193
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith194,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith199
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith199
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith200
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith200
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith199
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith201
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith201
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith200
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith202
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith202
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith201
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,329, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith203
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith203
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9329>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith202
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith204
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith204
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith203
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,337, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith205
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith205
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9337>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith204
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,327, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith206
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith206
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9327>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith205
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,307, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith207
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith207
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9307>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith206
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith211
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith211
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith207
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith210
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith210
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith211,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith209
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 2)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith209
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith210,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 5, types: 271, coercions: 7, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith213
+  :: (Determinant 3 Float,
+      (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.GetSliceElemsWrk
+           '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+        (Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.SetSliceElemsWrk
+           '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+       ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat])),
+      (Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Data.Matrix.Static.Sign 2)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith213
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith214,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith211,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith24
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith218
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith218
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith219
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith219
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith218
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith220
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith220
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith219
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith221
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith221
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith220
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,339, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith222
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith222
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9339>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith221
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,309, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith223
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith223
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+            `cast` <Co:9309>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith222
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,337, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith224
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith224
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9337>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith223
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,337, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith225
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith225
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9337>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith224
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,307, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith226
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith226
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+            `cast` <Co:9307>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith225
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith230
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith230
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith226
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith229
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith229
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith230,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith228
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 1)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith228
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith229,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 5, types: 271, coercions: 7, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith232
+  :: (Determinant 3 Float,
+      (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.GetSliceElemsWrk
+           '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+        (Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.SetSliceElemsWrk
+           '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+       ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat])),
+      (Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Data.Matrix.Static.Sign 1)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith232
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith233,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith230,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith25
+     `cast` <Co:3>)
+
+-- RHS size: {terms: 7, types: 43, coercions: 9,269, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith237
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith237
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+            `cast` <Co:9269>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 2]))
+        (GHC.Types.[] @ a)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,269, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith238
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith238
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+            `cast` <Co:9269>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith237
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,267, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith239
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith239
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[2, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+            `cast` <Co:9267>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[2, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith238
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,269, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith240
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith240
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+            `cast` <Co:9269>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith239
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,269, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith241
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith241
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+            `cast` <Co:9269>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith240
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,267, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith242
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith242
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[1, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+            `cast` <Co:9267>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[1, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith241
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,267, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith243
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith243
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 2]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+            `cast` <Co:9267>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 2]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith242
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,267, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith244
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith244
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 1]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+            `cast` <Co:9267>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 1]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith243
+           @ a f)
+
+-- RHS size: {terms: 8, types: 43, coercions: 9,265, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith245
+  :: forall a.
+     (forall (x1 :: [GHC.Types.Nat]).
+      Type.List.MkCtx
+        [GHC.Types.Nat]
+        (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        x1 =>
+      Data.Proxy.Proxy x1 -> a)
+     -> [a]
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith245
+  = \ (@ a)
+      (f :: forall (x1 :: [GHC.Types.Nat]).
+            Type.List.MkCtx
+              [GHC.Types.Nat]
+              (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+              (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+              x1 =>
+            Data.Proxy.Proxy x1 -> a) ->
+      GHC.Types.:
+        @ a
+        (f @ '[0, 0]
+           (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+            `cast` <Co:9265>)
+           (Data.Proxy.Proxy @ [GHC.Types.Nat] @ '[0, 0]))
+        (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith244
+           @ a f)
+
+-- RHS size: {terms: 3, types: 124, coercions: 116, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith249
+  :: (Data.Tensor.Static.IsTensor '[3, 3] Float,
+      Type.List.DemoteWith
+        [GHC.Types.Nat]
+        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+        (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+        '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+          '[2, 1], '[2, 2]])
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith249
+  = (TensorInstances.$fIsTensor:Float3,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith245
+     `cast` <Co:116>)
+
+-- RHS size: {terms: 4, types: 130, coercions: 4, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith248
+  :: ((Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Determinant 3 Float, Num Float)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith248
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith249,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     GHC.Float.$fNumFloat)
+
+-- RHS size: {terms: 3, types: 133, coercions: 3, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith247
+  :: (((Data.Tensor.Static.IsTensor '[3, 3] Float,
+        Type.List.DemoteWith
+          [GHC.Types.Nat]
+          ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+          (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+          '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+            '[2, 1], '[2, 2]]),
+       Determinant 3 Float, Num Float),
+      Data.Matrix.Static.Sign 0)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith247
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith248,
+     Data.Matrix.Static.$fSign0_$csign `cast` <Co:3>)
+
+-- RHS size: {terms: 5, types: 271, coercions: 7, joins: 0/0}
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith251
+  :: (Determinant 3 Float,
+      (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.GetSliceElemsWrk
+           '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]),
+        (Data.Tensor.Static.IsTensor '[4, 4] Float,
+         Data.Tensor.Static.IsTensor '[] Float,
+         Data.Tensor.Static.SetSliceElemsWrk
+           '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+             'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])),
+       ('[] :: [GHC.Types.Nat]) ~ ('[] :: [GHC.Types.Nat])),
+      (Data.Tensor.Static.IsTensor '[3, 3] Float,
+       Type.List.DemoteWith
+         [GHC.Types.Nat]
+         ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+         (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+         '['[0, 0], '[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+           '[2, 1], '[2, 2]]),
+      Data.Matrix.Static.Sign 0)
+CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith251
+  = (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith28
+     `cast` <Co:4>,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith252,
+     CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith249,
+     Data.Matrix.Static.$fSign0_$csign `cast` <Co:3>)
+
+-- RHS size: {terms: 542,
+              types: 12,122,
+              coercions: 299,904,
+              joins: 0/25}
+inverse_ :: Matrix 4 4 Float -> Matrix 4 4 Float
+inverse_
+  = \ (m :: Matrix 4 4 Float) ->
+      let {
+        lvl22
+          :: forall (x1 :: [GHC.Types.Nat]) (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4
+                  (Data.Matrix.Static.Index0 x1)
+                  (Data.Matrix.Static.Index1 x1)
+                  4
+                  Float)
+               index =>
+             Data.Proxy.Proxy index -> Float
+        lvl22
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (@ (index :: [GHC.Types.Nat]))
+              (irred
+                 :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4
+                         (Data.Matrix.Static.Index0 x1)
+                         (Data.Matrix.Static.Index1 x1)
+                         4
+                         Float)
+                      index)
+              _ ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 x1)
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 x1)
+                                        (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 x1)
+                                           (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index1 x1)
+                                           (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           (Data.Matrix.Static.Index0 x1)
+                                           (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (irred `cast` <Co:153>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index0 x1)
+                                        (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        (Data.Matrix.Static.Index1 x1)
+                                        (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (irred `cast` <Co:22>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index0 x1) (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  (Data.Matrix.Static.Index1 x1) (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (irred `cast` <Co:22>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox7
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index0 x1) (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   (Data.Matrix.Static.Index1 x1) (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (irred `cast` <Co:22>))
+                    `cast` <Co:34>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 m)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x ds1 -> x
+              }
+              }
+              }
+              } } in
+      let {
+        $wf
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.CofactorMatrixGoSym2 4 Float)
+               x1 =>
+             Float
+        $wf
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.CofactorMatrixGoSym2 4 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                            @ (Type.List.DemoteWith
+                                 [GHC.Types.Nat]
+                                 ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                 (Data.Matrix.Static.MinorMatrixGoSym4
+                                    (Data.Matrix.Static.Index0 x1)
+                                    (Data.Matrix.Static.Index1 x1)
+                                    4
+                                    Float)
+                                 (Data.Tensor.Static.Sequence
+                                    (Data.Tensor.Static.IndexesRanges'
+                                       '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                                       (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))))
+                            (GHC.Classes.$p1(%,,%)
+                               @ (Data.Tensor.Static.IsTensor
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float,
+                                  Type.List.DemoteWith
+                                    [GHC.Types.Nat]
+                                    ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                    (Data.Matrix.Static.MinorMatrixGoSym4
+                                       (Data.Matrix.Static.Index0 x1)
+                                       (Data.Matrix.Static.Index1 x1)
+                                       4
+                                       Float)
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                                          (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))))
+                               @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                               @ (Num Float)
+                               (GHC.Classes.$p1(%,%)
+                                  @ ((Data.Tensor.Static.IsTensor
+                                        '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float,
+                                      Type.List.DemoteWith
+                                        [GHC.Types.Nat]
+                                        ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                        (Data.Matrix.Static.MinorMatrixGoSym4
+                                           (Data.Matrix.Static.Index0 x1)
+                                           (Data.Matrix.Static.Index1 x1)
+                                           4
+                                           Float)
+                                        (Data.Tensor.Static.Sequence
+                                           (Data.Tensor.Static.IndexesRanges'
+                                              '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                                              (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))))),
+                                     Determinant (4 GHC.TypeNats.- 1) Float, Num Float)
+                                  @ (Data.Matrix.Static.Sign
+                                       (Data.Matrix.Static.Index0 x1
+                                        GHC.TypeNats.+ Data.Matrix.Static.Index1 x1))
+                                  (w `cast` <Co:74>)))))
+                      `cast` <Co:16>)
+              of cobox16
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                            @ (Type.List.DemoteWith
+                                 [GHC.Types.Nat]
+                                 ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                 (Data.Matrix.Static.MinorMatrixGoSym4
+                                    (Data.Matrix.Static.Index0 x1)
+                                    (Data.Matrix.Static.Index1 x1)
+                                    4
+                                    Float)
+                                 (Data.Tensor.Static.AllIndexes
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                            (GHC.Classes.$p1(%,,%)
+                               @ (MinorMatrix
+                                    (Data.Matrix.Static.Index0 x1)
+                                    (Data.Matrix.Static.Index1 x1)
+                                    4
+                                    Float)
+                               @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                               @ (Num Float)
+                               (GHC.Classes.$p1(%,%)
+                                  @ (Minor
+                                       (Data.Matrix.Static.Index0 x1)
+                                       (Data.Matrix.Static.Index1 x1)
+                                       4
+                                       Float)
+                                  @ (Data.Matrix.Static.Sign
+                                       (Data.Matrix.Static.Index0 x1
+                                        GHC.TypeNats.+ Data.Matrix.Static.Index1 x1))
+                                  (w `cast` <Co:14>)))))
+                      `cast` <Co:16>)
+              of cobox17
+              { __DEFAULT ->
+              let {
+                $d(%,,%)
+                  :: Minor
+                       (Data.Matrix.Static.Index0 x1)
+                       (Data.Matrix.Static.Index1 x1)
+                       4
+                       Float
+                $d(%,,%)
+                  = GHC.Classes.$p1(%,%)
+                      @ (Minor
+                           (Data.Matrix.Static.Index0 x1)
+                           (Data.Matrix.Static.Index1 x1)
+                           4
+                           Float)
+                      @ (Data.Matrix.Static.Sign
+                           (Data.Matrix.Static.Index0 x1
+                            GHC.TypeNats.+ Data.Matrix.Static.Index1 x1))
+                      (w `cast` <Co:14>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                            @ (Type.List.DemoteWith
+                                 [GHC.Types.Nat]
+                                 ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                 (Data.Matrix.Static.MinorMatrixGoSym4
+                                    (Data.Matrix.Static.Index0 x1)
+                                    (Data.Matrix.Static.Index1 x1)
+                                    4
+                                    Float)
+                                 (Data.Tensor.Static.AllIndexes
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                            (GHC.Classes.$p1(%,,%)
+                               @ (MinorMatrix
+                                    (Data.Matrix.Static.Index0 x1)
+                                    (Data.Matrix.Static.Index1 x1)
+                                    4
+                                    Float)
+                               @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                               @ (Num Float)
+                               $d(%,,%))))
+                      `cast` <Co:16>)
+              of cobox
+              { __DEFAULT ->
+              let {
+                $dNum :: Num Float
+                $dNum
+                  = GHC.Classes.$p3(%,,%)
+                      @ (MinorMatrix
+                           (Data.Matrix.Static.Index0 x1)
+                           (Data.Matrix.Static.Index1 x1)
+                           4
+                           Float)
+                      @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                      @ (Num Float)
+                      $d(%,,%) } in
+              * @ Float
+                $dNum
+                (((GHC.Classes.$p2(%,%)
+                     @ (Minor
+                          (Data.Matrix.Static.Index0 x1)
+                          (Data.Matrix.Static.Index1 x1)
+                          4
+                          Float)
+                     @ (Data.Matrix.Static.Sign
+                          (Data.Matrix.Static.Index0 x1
+                           GHC.TypeNats.+ Data.Matrix.Static.Index1 x1))
+                     (w `cast` <Co:14>))
+                  `cast` <Co:6>)
+                   @ Float $dNum)
+                (let {
+                   $d(%,%)1
+                     :: MinorMatrix
+                          (Data.Matrix.Static.Index0 x1)
+                          (Data.Matrix.Static.Index1 x1)
+                          4
+                          Float
+                   $d(%,%)1
+                     = GHC.Classes.$p1(%,,%)
+                         @ (MinorMatrix
+                              (Data.Matrix.Static.Index0 x1)
+                              (Data.Matrix.Static.Index1 x1)
+                              4
+                              Float)
+                         @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                         @ (Num Float)
+                         $d(%,,%) } in
+                 case GHC.Types.HEq_sc
+                        @ Bool
+                        @ Bool
+                        @ (Data.Tensor.Static.PositiveDims
+                             '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                        @ 'True
+                        ((Data.Tensor.Static.$p1IsTensor
+                            @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                            @ Float
+                            (GHC.Classes.$p1(%,%)
+                               @ (Data.Tensor.Static.IsTensor
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                               @ (Type.List.DemoteWith
+                                    [GHC.Types.Nat]
+                                    ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                    (Data.Matrix.Static.MinorMatrixGoSym4
+                                       (Data.Matrix.Static.Index0 x1)
+                                       (Data.Matrix.Static.Index1 x1)
+                                       4
+                                       Float)
+                                    (Data.Tensor.Static.AllIndexes
+                                       '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                               $d(%,%)1))
+                         `cast` <Co:16>)
+                 of cobox1
+                 { __DEFAULT ->
+                 ((GHC.Classes.$p2(%,,%)
+                     @ (MinorMatrix
+                          (Data.Matrix.Static.Index0 x1)
+                          (Data.Matrix.Static.Index1 x1)
+                          4
+                          Float)
+                     @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                     @ (Num Float)
+                     $d(%,,%))
+                  `cast` <Co:5>)
+                   $dNum
+                   (let {
+                      $dIsTensor
+                        :: Data.Tensor.Static.IsTensor
+                             '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float
+                      $dIsTensor
+                        = GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                            @ (Type.List.DemoteWith
+                                 [GHC.Types.Nat]
+                                 ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                 (Data.Matrix.Static.MinorMatrixGoSym4
+                                    (Data.Matrix.Static.Index0 x1)
+                                    (Data.Matrix.Static.Index1 x1)
+                                    4
+                                    Float)
+                                 (Data.Tensor.Static.AllIndexes
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                            $d(%,%)1 } in
+                    case GHC.Types.HEq_sc
+                           @ Bool
+                           @ Bool
+                           @ (Data.Tensor.Static.PositiveDims
+                                '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                           @ 'True
+                           ((Data.Tensor.Static.$p1IsTensor
+                               @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] @ Float $dIsTensor)
+                            `cast` <Co:16>)
+                    of cobox3
+                    { __DEFAULT ->
+                    Data.Tensor.Static.unsafeFromList
+                      @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                      @ Float
+                      $dIsTensor
+                      (((GHC.Classes.$p2(%,%)
+                           @ (Data.Tensor.Static.IsTensor
+                                '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                           @ (Type.List.DemoteWith
+                                [GHC.Types.Nat]
+                                ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                (Data.Matrix.Static.MinorMatrixGoSym4
+                                   (Data.Matrix.Static.Index0 x1)
+                                   (Data.Matrix.Static.Index1 x1)
+                                   4
+                                   Float)
+                                (Data.Tensor.Static.AllIndexes
+                                   '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                           $d(%,%)1)
+                        `cast` <Co:27>)
+                         @ Float (lvl22 @ x1))
+                    })
+                 })
+              }
+              }
+              } } in
+      let {
+        m1 :: Matrix 4 4 Float
+        m1
+          = case $wf
+                   @ '[0, 0]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith247
+                    `cast` <Co:3038>)
+            of
+            { GHC.Types.F# dt1 ->
+            case $wf
+                   @ '[0, 1]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith228
+                    `cast` <Co:3038>)
+            of
+            { GHC.Types.F# dt3 ->
+            case $wf
+                   @ '[0, 2]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith209
+                    `cast` <Co:3038>)
+            of
+            { GHC.Types.F# dt5 ->
+            case $wf
+                   @ '[0, 3]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith197
+                    `cast` <Co:3038>)
+            of
+            { GHC.Types.F# dt7 ->
+            case $wf
+                   @ '[1, 0]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith193
+                    `cast` <Co:3038>)
+            of
+            { GHC.Types.F# dt9 ->
+            case $wf
+                   @ '[1, 1]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith180
+                    `cast` <Co:3039>)
+            of
+            { GHC.Types.F# dt11 ->
+            case $wf
+                   @ '[1, 2]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith167
+                    `cast` <Co:3039>)
+            of
+            { GHC.Types.F# dt13 ->
+            case $wf
+                   @ '[1, 3]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith154
+                    `cast` <Co:3039>)
+            of
+            { GHC.Types.F# dt15 ->
+            case $wf
+                   @ '[2, 0]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith150
+                    `cast` <Co:3038>)
+            of
+            { GHC.Types.F# dt17 ->
+            case $wf
+                   @ '[2, 1]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith137
+                    `cast` <Co:3039>)
+            of
+            { GHC.Types.F# dt19 ->
+            case $wf
+                   @ '[2, 2]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith124
+                    `cast` <Co:3039>)
+            of
+            { GHC.Types.F# dt21 ->
+            case $wf
+                   @ '[2, 3]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith85
+                    `cast` <Co:3039>)
+            of
+            { GHC.Types.F# dt23 ->
+            case $wf
+                   @ '[3, 0]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith69
+                    `cast` <Co:3038>)
+            of
+            { GHC.Types.F# dt25 ->
+            case $wf
+                   @ '[3, 1]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith56
+                    `cast` <Co:3039>)
+            of
+            { GHC.Types.F# dt27 ->
+            case $wf
+                   @ '[3, 2]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith43
+                    `cast` <Co:3039>)
+            of
+            { GHC.Types.F# dt29 ->
+            case $wf
+                   @ '[3, 3]
+                   (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+                    `cast` <Co:3039>)
+            of
+            { GHC.Types.F# dt31 ->
+            (TensorInstances.Tensor'4'4'Float
+               dt1
+               dt3
+               dt5
+               dt7
+               dt9
+               dt11
+               dt13
+               dt15
+               dt17
+               dt19
+               dt21
+               dt23
+               dt25
+               dt27
+               dt29
+               dt31)
+            `cast` <Co:2>
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            }
+            } } in
+      let {
+        $wf1
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.TransposeGoSym3 4 4 Float)
+               x1 =>
+             Float
+        $wf1
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.TransposeGoSym3 4 4 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    (Data.Matrix.Static.ReverseIndex x1)
+                                    (Data.Tensor.Static.SliceEndIndex
+                                       (Data.Matrix.Static.ReverseIndex x1) '[1, 1] '[4, 4])
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:60>)))
+                      `cast` <Co:12>)
+              of cobox15
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    (Data.Matrix.Static.ReverseIndex x1) '[1, 1] '[4, 4]))
+                            (w `cast` <Co:16>)))
+                      `cast` <Co:12>)
+              of cobox16
+              { __DEFAULT ->
+              let {
+                $dIsTensor2 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor2
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              (Data.Matrix.Static.ReverseIndex x1) '[1, 1] '[4, 4]))
+                      (w `cast` <Co:16>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor2)
+                      `cast` <Co:12>)
+              of cobox17
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               (Data.Matrix.Static.ReverseIndex x1) '[1, 1] '[4, 4]))
+                       (w `cast` <Co:16>))
+                    `cast` <Co:20>)
+                     @ Float
+                     (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor2 m1)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x ds1 -> x
+              }
+              }
+              }
+              } } in
+      case $wf1
+             @ '[0, 0]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9181>)
+      of
+      { GHC.Types.F# dt1 ->
+      case $wf1
+             @ '[0, 1]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9199>)
+      of
+      { GHC.Types.F# dt3 ->
+      case $wf1
+             @ '[0, 2]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9199>)
+      of
+      { GHC.Types.F# dt5 ->
+      case $wf1
+             @ '[0, 3]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith77
+              `cast` <Co:9199>)
+      of
+      { GHC.Types.F# dt7 ->
+      case $wf1
+             @ '[1, 0]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9199>)
+      of
+      { GHC.Types.F# dt9 ->
+      case $wf1
+             @ '[1, 1]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9217>)
+      of
+      { GHC.Types.F# dt11 ->
+      case $wf1
+             @ '[1, 2]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9217>)
+      of
+      { GHC.Types.F# dt13 ->
+      case $wf1
+             @ '[1, 3]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith75
+              `cast` <Co:9217>)
+      of
+      { GHC.Types.F# dt15 ->
+      case $wf1
+             @ '[2, 0]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9199>)
+      of
+      { GHC.Types.F# dt17 ->
+      case $wf1
+             @ '[2, 1]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9217>)
+      of
+      { GHC.Types.F# dt19 ->
+      case $wf1
+             @ '[2, 2]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9217>)
+      of
+      { GHC.Types.F# dt21 ->
+      case $wf1
+             @ '[2, 3]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith73
+              `cast` <Co:9217>)
+      of
+      { GHC.Types.F# dt23 ->
+      case $wf1
+             @ '[3, 0]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith39
+              `cast` <Co:9199>)
+      of
+      { GHC.Types.F# dt25 ->
+      case $wf1
+             @ '[3, 1]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith35
+              `cast` <Co:9217>)
+      of
+      { GHC.Types.F# dt27 ->
+      case $wf1
+             @ '[3, 2]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith31
+              `cast` <Co:9217>)
+      of
+      { GHC.Types.F# dt29 ->
+      case $wf1
+             @ '[3, 3]
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith114
+              `cast` <Co:9217>)
+      of
+      { GHC.Types.F# dt31 ->
+      let {
+        lvl23
+          :: forall (x1 :: GHC.Types.Nat) (index :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+               (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+               index =>
+             Data.Proxy.Proxy index -> Float
+        lvl23
+          = \ (@ (x1 :: GHC.Types.Nat))
+              (@ (index :: [GHC.Types.Nat]))
+              (irred1
+                 :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                      (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                      index)
+              _ ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        x1 (Data.Matrix.Static.Index1 index)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 index),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           x1 (Data.Matrix.Static.Index1 index)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 index)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (irred1 `cast` <Co:141>)))
+                      `cast` <Co:12>)
+              of cobox15
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 index),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        x1 (Data.Matrix.Static.Index1 index)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (irred1 `cast` <Co:18>)))
+                      `cast` <Co:12>)
+              of cobox16
+              { __DEFAULT ->
+              let {
+                $dIsTensor2 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor2
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index0 index),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  x1 (Data.Matrix.Static.Index1 index)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (irred1 `cast` <Co:18>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor2)
+                      `cast` <Co:12>)
+              of cobox18
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index0 index),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   x1 (Data.Matrix.Static.Index1 index)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (irred1 `cast` <Co:18>))
+                    `cast` <Co:32>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor2 m)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x ds1 -> x
+              }
+              }
+              }
+              } } in
+      let {
+        $wf2
+          :: forall (x1 :: GHC.Types.Nat).
+             Type.List.MkCtx
+               GHC.Types.Nat
+               (Data.Singletons.TyFun GHC.Types.Nat Constraint -> *)
+               (Data.Matrix.Static.DeterminantGoSym2 4 Float)
+               x1 =>
+             GHC.Prim.Float#
+        $wf2
+          = \ (@ (x1 :: GHC.Types.Nat))
+              (w :: Type.List.MkCtx
+                      GHC.Types.Nat
+                      (Data.Singletons.TyFun GHC.Types.Nat Constraint -> *)
+                      (Data.Matrix.Static.DeterminantGoSym2 4 Float)
+                      x1) ->
+              let {
+                $d(%,%)1
+                  :: (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+                        Data.Tensor.Static.IsTensor
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Type.Bool.If
+                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                          Float,
+                        Data.Tensor.Static.GetSliceElemsWrk
+                          (Data.Tensor.Static.ElemsInSlice''
+                             '[0]
+                             (Data.Type.Bool.If
+                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                             (Data.Tensor.Static.SliceEndIndex
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                                '[4])
+                             : Data.Tensor.Static.ElemsInSlice'
+                                 (0 : Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[x1]
+                                        (TypeError ...))
+                                 (0 : Data.Tensor.Static.SliceEndIndex
+                                        (Data.Type.Bool.If
+                                           (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                           '[x1]
+                                           (TypeError ...))
+                                        (Data.Type.Bool.If
+                                           (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                           '[1]
+                                           (TypeError ...))
+                                        '[4])
+                                 (Data.Tensor.Static.Sequence''
+                                    0
+                                    (Data.Tensor.Static.Sequence'
+                                       (Data.Tensor.Static.NatsFromTo'
+                                          1
+                                          (4 GHC.TypeNats.- 1)
+                                          (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                       '['[]])
+                                  Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                          (Data.Tensor.Static.NatsFromTo'
+                                                             1
+                                                             (4 GHC.TypeNats.- 1)
+                                                             (1
+                                                              GHC.TypeNats.<=? (4
+                                                                                GHC.TypeNats.- 1)))
+                                                          ('[0]
+                                                             : Data.Tensor.Static.Sequence'
+                                                                 (Data.Tensor.Static.NatsFromTo'
+                                                                    1
+                                                                    (4 GHC.TypeNats.- 1)
+                                                                    (1
+                                                                     GHC.TypeNats.<=? (4
+                                                                                       GHC.TypeNats.- 1)))
+                                                                 '['[]])))),
+                       (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                        Data.Tensor.Static.IsTensor
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Type.Bool.If
+                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                          Float,
+                        Data.Tensor.Static.SetSliceElemsWrk
+                          (Data.Tensor.Static.ElemsInSlice''
+                             '[0]
+                             (Data.Type.Bool.If
+                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                             (Data.Tensor.Static.SliceEndIndex
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                                '[4])
+                             : Data.Tensor.Static.ElemsInSlice'
+                                 (0 : Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[x1]
+                                        (TypeError ...))
+                                 (0 : Data.Tensor.Static.SliceEndIndex
+                                        (Data.Type.Bool.If
+                                           (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                           '[x1]
+                                           (TypeError ...))
+                                        (Data.Type.Bool.If
+                                           (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                           '[1]
+                                           (TypeError ...))
+                                        '[4])
+                                 (Data.Tensor.Static.Sequence''
+                                    0
+                                    (Data.Tensor.Static.Sequence'
+                                       (Data.Tensor.Static.NatsFromTo'
+                                          1
+                                          (4 GHC.TypeNats.- 1)
+                                          (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                       '['[]])
+                                  Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                          (Data.Tensor.Static.NatsFromTo'
+                                                             1
+                                                             (4 GHC.TypeNats.- 1)
+                                                             (1
+                                                              GHC.TypeNats.<=? (4
+                                                                                GHC.TypeNats.- 1)))
+                                                          ('[0]
+                                                             : Data.Tensor.Static.Sequence'
+                                                                 (Data.Tensor.Static.NatsFromTo'
+                                                                    1
+                                                                    (4 GHC.TypeNats.- 1)
+                                                                    (1
+                                                                     GHC.TypeNats.<=? (4
+                                                                                       GHC.TypeNats.- 1)))
+                                                                 '['[]]))))),
+                      (Data.Tensor.Static.NormalizeDims
+                         (Data.Type.Bool.If
+                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                            '[1]
+                            (TypeError ...)) :: [GHC.Types.Nat])
+                      ~
+                      ('[] :: [GHC.Types.Nat]))
+                $d(%,%)1
+                  = GHC.Classes.$p2(%,,,%)
+                      @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                      @ (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+                           Data.Tensor.Static.IsTensor
+                             (Data.Tensor.Static.NormalizeDims
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                             Float,
+                           Data.Tensor.Static.GetSliceElemsWrk
+                             (Data.Tensor.Static.ElemsInSlice''
+                                '[0]
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                                (Data.Tensor.Static.SliceEndIndex
+                                   (Data.Type.Bool.If
+                                      (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                      '[x1]
+                                      (TypeError ...))
+                                   (Data.Type.Bool.If
+                                      (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                      '[1]
+                                      (TypeError ...))
+                                   '[4])
+                                : Data.Tensor.Static.ElemsInSlice'
+                                    (0 : Data.Type.Bool.If
+                                           (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                           '[x1]
+                                           (TypeError ...))
+                                    (0 : Data.Tensor.Static.SliceEndIndex
+                                           (Data.Type.Bool.If
+                                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                              '[x1]
+                                              (TypeError ...))
+                                           (Data.Type.Bool.If
+                                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                              '[1]
+                                              (TypeError ...))
+                                           '[4])
+                                    (Data.Tensor.Static.Sequence''
+                                       0
+                                       (Data.Tensor.Static.Sequence'
+                                          (Data.Tensor.Static.NatsFromTo'
+                                             1
+                                             (4 GHC.TypeNats.- 1)
+                                             (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                          '['[]])
+                                     Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                             (Data.Tensor.Static.NatsFromTo'
+                                                                1
+                                                                (4 GHC.TypeNats.- 1)
+                                                                (1
+                                                                 GHC.TypeNats.<=? (4
+                                                                                   GHC.TypeNats.- 1)))
+                                                             ('[0]
+                                                                : Data.Tensor.Static.Sequence'
+                                                                    (Data.Tensor.Static.NatsFromTo'
+                                                                       1
+                                                                       (4 GHC.TypeNats.- 1)
+                                                                       (1
+                                                                        GHC.TypeNats.<=? (4
+                                                                                          GHC.TypeNats.- 1)))
+                                                                    '['[]])))),
+                          (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                           Data.Tensor.Static.IsTensor
+                             (Data.Tensor.Static.NormalizeDims
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                             Float,
+                           Data.Tensor.Static.SetSliceElemsWrk
+                             (Data.Tensor.Static.ElemsInSlice''
+                                '[0]
+                                (Data.Type.Bool.If
+                                   (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                                (Data.Tensor.Static.SliceEndIndex
+                                   (Data.Type.Bool.If
+                                      (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                      '[x1]
+                                      (TypeError ...))
+                                   (Data.Type.Bool.If
+                                      (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                      '[1]
+                                      (TypeError ...))
+                                   '[4])
+                                : Data.Tensor.Static.ElemsInSlice'
+                                    (0 : Data.Type.Bool.If
+                                           (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                           '[x1]
+                                           (TypeError ...))
+                                    (0 : Data.Tensor.Static.SliceEndIndex
+                                           (Data.Type.Bool.If
+                                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                              '[x1]
+                                              (TypeError ...))
+                                           (Data.Type.Bool.If
+                                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                              '[1]
+                                              (TypeError ...))
+                                           '[4])
+                                    (Data.Tensor.Static.Sequence''
+                                       0
+                                       (Data.Tensor.Static.Sequence'
+                                          (Data.Tensor.Static.NatsFromTo'
+                                             1
+                                             (4 GHC.TypeNats.- 1)
+                                             (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                          '['[]])
+                                     Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                             (Data.Tensor.Static.NatsFromTo'
+                                                                1
+                                                                (4 GHC.TypeNats.- 1)
+                                                                (1
+                                                                 GHC.TypeNats.<=? (4
+                                                                                   GHC.TypeNats.- 1)))
+                                                             ('[0]
+                                                                : Data.Tensor.Static.Sequence'
+                                                                    (Data.Tensor.Static.NatsFromTo'
+                                                                       1
+                                                                       (4 GHC.TypeNats.- 1)
+                                                                       (1
+                                                                        GHC.TypeNats.<=? (4
+                                                                                          GHC.TypeNats.- 1)))
+                                                                    '['[]]))))),
+                         (Data.Tensor.Static.NormalizeDims
+                            (Data.Type.Bool.If
+                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                               '[1]
+                               (TypeError ...)) :: [GHC.Types.Nat])
+                         ~
+                         ('[] :: [GHC.Types.Nat]))
+                      @ (Data.Tensor.Static.IsTensor
+                           '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float,
+                         Type.List.DemoteWith
+                           [GHC.Types.Nat]
+                           ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                           (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                           (Data.Tensor.Static.Sequence
+                              (Data.Tensor.Static.IndexesRanges'
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                                 (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))))
+                      @ (Data.Matrix.Static.Sign x1)
+                      (w `cast` <Co:5736>) } in
+              let {
+                $d(%,%)2
+                  :: ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+                       Data.Tensor.Static.IsTensor
+                         (Data.Tensor.Static.NormalizeDims
+                            (Data.Type.Bool.If
+                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                         Float,
+                       Data.Tensor.Static.GetSliceElemsWrk
+                         (Data.Tensor.Static.ElemsInSlice''
+                            '[0]
+                            (Data.Type.Bool.If
+                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                            (Data.Tensor.Static.SliceEndIndex
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                               '[4])
+                            : Data.Tensor.Static.ElemsInSlice'
+                                (0 : Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[x1]
+                                       (TypeError ...))
+                                (0 : Data.Tensor.Static.SliceEndIndex
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[1]
+                                          (TypeError ...))
+                                       '[4])
+                                (Data.Tensor.Static.Sequence''
+                                   0
+                                   (Data.Tensor.Static.Sequence'
+                                      (Data.Tensor.Static.NatsFromTo'
+                                         1
+                                         (4 GHC.TypeNats.- 1)
+                                         (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                      '['[]])
+                                 Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                         (Data.Tensor.Static.NatsFromTo'
+                                                            1
+                                                            (4 GHC.TypeNats.- 1)
+                                                            (1
+                                                             GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                                         ('[0]
+                                                            : Data.Tensor.Static.Sequence'
+                                                                (Data.Tensor.Static.NatsFromTo'
+                                                                   1
+                                                                   (4 GHC.TypeNats.- 1)
+                                                                   (1
+                                                                    GHC.TypeNats.<=? (4
+                                                                                      GHC.TypeNats.- 1)))
+                                                                '['[]])))),
+                      (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                       Data.Tensor.Static.IsTensor
+                         (Data.Tensor.Static.NormalizeDims
+                            (Data.Type.Bool.If
+                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                         Float,
+                       Data.Tensor.Static.SetSliceElemsWrk
+                         (Data.Tensor.Static.ElemsInSlice''
+                            '[0]
+                            (Data.Type.Bool.If
+                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                            (Data.Tensor.Static.SliceEndIndex
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                               '[4])
+                            : Data.Tensor.Static.ElemsInSlice'
+                                (0 : Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[x1]
+                                       (TypeError ...))
+                                (0 : Data.Tensor.Static.SliceEndIndex
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[1]
+                                          (TypeError ...))
+                                       '[4])
+                                (Data.Tensor.Static.Sequence''
+                                   0
+                                   (Data.Tensor.Static.Sequence'
+                                      (Data.Tensor.Static.NatsFromTo'
+                                         1
+                                         (4 GHC.TypeNats.- 1)
+                                         (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                      '['[]])
+                                 Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                         (Data.Tensor.Static.NatsFromTo'
+                                                            1
+                                                            (4 GHC.TypeNats.- 1)
+                                                            (1
+                                                             GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                                         ('[0]
+                                                            : Data.Tensor.Static.Sequence'
+                                                                (Data.Tensor.Static.NatsFromTo'
+                                                                   1
+                                                                   (4 GHC.TypeNats.- 1)
+                                                                   (1
+                                                                    GHC.TypeNats.<=? (4
+                                                                                      GHC.TypeNats.- 1)))
+                                                                '['[]])))))
+                $d(%,%)2
+                  = GHC.Classes.$p1(%,%)
+                      @ ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+                          Data.Tensor.Static.IsTensor
+                            (Data.Tensor.Static.NormalizeDims
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                            Float,
+                          Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice''
+                               '[0]
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                               (Data.Tensor.Static.SliceEndIndex
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[x1]
+                                     (TypeError ...))
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[1]
+                                     (TypeError ...))
+                                  '[4])
+                               : Data.Tensor.Static.ElemsInSlice'
+                                   (0 : Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                   (0 : Data.Tensor.Static.SliceEndIndex
+                                          (Data.Type.Bool.If
+                                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                             '[x1]
+                                             (TypeError ...))
+                                          (Data.Type.Bool.If
+                                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                             '[1]
+                                             (TypeError ...))
+                                          '[4])
+                                   (Data.Tensor.Static.Sequence''
+                                      0
+                                      (Data.Tensor.Static.Sequence'
+                                         (Data.Tensor.Static.NatsFromTo'
+                                            1
+                                            (4 GHC.TypeNats.- 1)
+                                            (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                         '['[]])
+                                    Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                            (Data.Tensor.Static.NatsFromTo'
+                                                               1
+                                                               (4 GHC.TypeNats.- 1)
+                                                               (1
+                                                                GHC.TypeNats.<=? (4
+                                                                                  GHC.TypeNats.- 1)))
+                                                            ('[0]
+                                                               : Data.Tensor.Static.Sequence'
+                                                                   (Data.Tensor.Static.NatsFromTo'
+                                                                      1
+                                                                      (4 GHC.TypeNats.- 1)
+                                                                      (1
+                                                                       GHC.TypeNats.<=? (4
+                                                                                         GHC.TypeNats.- 1)))
+                                                                   '['[]])))),
+                         (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                          Data.Tensor.Static.IsTensor
+                            (Data.Tensor.Static.NormalizeDims
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                            Float,
+                          Data.Tensor.Static.SetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice''
+                               '[0]
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                               (Data.Tensor.Static.SliceEndIndex
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[x1]
+                                     (TypeError ...))
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[1]
+                                     (TypeError ...))
+                                  '[4])
+                               : Data.Tensor.Static.ElemsInSlice'
+                                   (0 : Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                   (0 : Data.Tensor.Static.SliceEndIndex
+                                          (Data.Type.Bool.If
+                                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                             '[x1]
+                                             (TypeError ...))
+                                          (Data.Type.Bool.If
+                                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                             '[1]
+                                             (TypeError ...))
+                                          '[4])
+                                   (Data.Tensor.Static.Sequence''
+                                      0
+                                      (Data.Tensor.Static.Sequence'
+                                         (Data.Tensor.Static.NatsFromTo'
+                                            1
+                                            (4 GHC.TypeNats.- 1)
+                                            (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                         '['[]])
+                                    Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                            (Data.Tensor.Static.NatsFromTo'
+                                                               1
+                                                               (4 GHC.TypeNats.- 1)
+                                                               (1
+                                                                GHC.TypeNats.<=? (4
+                                                                                  GHC.TypeNats.- 1)))
+                                                            ('[0]
+                                                               : Data.Tensor.Static.Sequence'
+                                                                   (Data.Tensor.Static.NatsFromTo'
+                                                                      1
+                                                                      (4 GHC.TypeNats.- 1)
+                                                                      (1
+                                                                       GHC.TypeNats.<=? (4
+                                                                                         GHC.TypeNats.- 1)))
+                                                                   '['[]])))))
+                      @ ((Data.Tensor.Static.NormalizeDims
+                            (Data.Type.Bool.If
+                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                               '[1]
+                               (TypeError ...)) :: [GHC.Types.Nat])
+                         ~
+                         ('[] :: [GHC.Types.Nat]))
+                      $d(%,%)1 } in
+              let {
+                $d(%,,%)
+                  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                      Data.Tensor.Static.IsTensor
+                        (Data.Tensor.Static.NormalizeDims
+                           (Data.Type.Bool.If
+                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                        Float,
+                      Data.Tensor.Static.GetSliceElemsWrk
+                        (Data.Tensor.Static.ElemsInSlice''
+                           '[0]
+                           (Data.Type.Bool.If
+                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                           (Data.Tensor.Static.SliceEndIndex
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                              '[4])
+                           : Data.Tensor.Static.ElemsInSlice'
+                               (0 : Data.Type.Bool.If
+                                      (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                      '[x1]
+                                      (TypeError ...))
+                               (0 : Data.Tensor.Static.SliceEndIndex
+                                      (Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[x1]
+                                         (TypeError ...))
+                                      (Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[1]
+                                         (TypeError ...))
+                                      '[4])
+                               (Data.Tensor.Static.Sequence''
+                                  0
+                                  (Data.Tensor.Static.Sequence'
+                                     (Data.Tensor.Static.NatsFromTo'
+                                        1
+                                        (4 GHC.TypeNats.- 1)
+                                        (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                     '['[]])
+                                Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                        (Data.Tensor.Static.NatsFromTo'
+                                                           1
+                                                           (4 GHC.TypeNats.- 1)
+                                                           (1
+                                                            GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                                        ('[0]
+                                                           : Data.Tensor.Static.Sequence'
+                                                               (Data.Tensor.Static.NatsFromTo'
+                                                                  1
+                                                                  (4 GHC.TypeNats.- 1)
+                                                                  (1
+                                                                   GHC.TypeNats.<=? (4
+                                                                                     GHC.TypeNats.- 1)))
+                                                               '['[]]))))
+                $d(%,,%)
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                         Data.Tensor.Static.IsTensor
+                           (Data.Tensor.Static.NormalizeDims
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                           Float,
+                         Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice''
+                              '[0]
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                              (Data.Tensor.Static.SliceEndIndex
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                    '[x1]
+                                    (TypeError ...))
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                                 '[4])
+                              : Data.Tensor.Static.ElemsInSlice'
+                                  (0 : Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[x1]
+                                         (TypeError ...))
+                                  (0 : Data.Tensor.Static.SliceEndIndex
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[x1]
+                                            (TypeError ...))
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[1]
+                                            (TypeError ...))
+                                         '[4])
+                                  (Data.Tensor.Static.Sequence''
+                                     0
+                                     (Data.Tensor.Static.Sequence'
+                                        (Data.Tensor.Static.NatsFromTo'
+                                           1
+                                           (4 GHC.TypeNats.- 1)
+                                           (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                        '['[]])
+                                   Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                           (Data.Tensor.Static.NatsFromTo'
+                                                              1
+                                                              (4 GHC.TypeNats.- 1)
+                                                              (1
+                                                               GHC.TypeNats.<=? (4
+                                                                                 GHC.TypeNats.- 1)))
+                                                           ('[0]
+                                                              : Data.Tensor.Static.Sequence'
+                                                                  (Data.Tensor.Static.NatsFromTo'
+                                                                     1
+                                                                     (4 GHC.TypeNats.- 1)
+                                                                     (1
+                                                                      GHC.TypeNats.<=? (4
+                                                                                        GHC.TypeNats.- 1)))
+                                                                  '['[]]))))
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                         Data.Tensor.Static.IsTensor
+                           (Data.Tensor.Static.NormalizeDims
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                           Float,
+                         Data.Tensor.Static.SetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice''
+                              '[0]
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                              (Data.Tensor.Static.SliceEndIndex
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                    '[x1]
+                                    (TypeError ...))
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                                 '[4])
+                              : Data.Tensor.Static.ElemsInSlice'
+                                  (0 : Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[x1]
+                                         (TypeError ...))
+                                  (0 : Data.Tensor.Static.SliceEndIndex
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[x1]
+                                            (TypeError ...))
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[1]
+                                            (TypeError ...))
+                                         '[4])
+                                  (Data.Tensor.Static.Sequence''
+                                     0
+                                     (Data.Tensor.Static.Sequence'
+                                        (Data.Tensor.Static.NatsFromTo'
+                                           1
+                                           (4 GHC.TypeNats.- 1)
+                                           (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                        '['[]])
+                                   Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                           (Data.Tensor.Static.NatsFromTo'
+                                                              1
+                                                              (4 GHC.TypeNats.- 1)
+                                                              (1
+                                                               GHC.TypeNats.<=? (4
+                                                                                 GHC.TypeNats.- 1)))
+                                                           ('[0]
+                                                              : Data.Tensor.Static.Sequence'
+                                                                  (Data.Tensor.Static.NatsFromTo'
+                                                                     1
+                                                                     (4 GHC.TypeNats.- 1)
+                                                                     (1
+                                                                      GHC.TypeNats.<=? (4
+                                                                                        GHC.TypeNats.- 1)))
+                                                                  '['[]]))))
+                      $d(%,%)2 } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[1]
+                                       (TypeError ...)))
+                                 Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice''
+                                    '[0]
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[x1]
+                                       (TypeError ...))
+                                    (Data.Tensor.Static.SliceEndIndex
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[1]
+                                          (TypeError ...))
+                                       '[4])
+                                    : Data.Tensor.Static.ElemsInSlice'
+                                        (0 : Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[x1]
+                                               (TypeError ...))
+                                        (0 : Data.Tensor.Static.SliceEndIndex
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[x1]
+                                                  (TypeError ...))
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[1]
+                                                  (TypeError ...))
+                                               '[4])
+                                        (Data.Tensor.Static.Sequence''
+                                           0
+                                           (Data.Tensor.Static.Sequence'
+                                              (Data.Tensor.Static.NatsFromTo'
+                                                 1
+                                                 (4 GHC.TypeNats.- 1)
+                                                 (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                              '['[]])
+                                         Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                                 (Data.Tensor.Static.NatsFromTo'
+                                                                    1
+                                                                    (4 GHC.TypeNats.- 1)
+                                                                    (1
+                                                                     GHC.TypeNats.<=? (4
+                                                                                       GHC.TypeNats.- 1)))
+                                                                 ('[0]
+                                                                    : Data.Tensor.Static.Sequence'
+                                                                        (Data.Tensor.Static.NatsFromTo'
+                                                                           1
+                                                                           (4 GHC.TypeNats.- 1)
+                                                                           (1
+                                                                            GHC.TypeNats.<=? (4
+                                                                                              GHC.TypeNats.- 1)))
+                                                                        '['[]]))))
+                            $d(%,,%)))
+                      `cast` <Co:12>)
+              of cobox1
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Type.Bool.If
+                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))))
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ (Data.Tensor.Static.NormalizeDims
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                         @ Float
+                         (GHC.Classes.$p2(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[1]
+                                       (TypeError ...)))
+                                 Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice''
+                                    '[0]
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[x1]
+                                       (TypeError ...))
+                                    (Data.Tensor.Static.SliceEndIndex
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[1]
+                                          (TypeError ...))
+                                       '[4])
+                                    : Data.Tensor.Static.ElemsInSlice'
+                                        (0 : Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[x1]
+                                               (TypeError ...))
+                                        (0 : Data.Tensor.Static.SliceEndIndex
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[x1]
+                                                  (TypeError ...))
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[1]
+                                                  (TypeError ...))
+                                               '[4])
+                                        (Data.Tensor.Static.Sequence''
+                                           0
+                                           (Data.Tensor.Static.Sequence'
+                                              (Data.Tensor.Static.NatsFromTo'
+                                                 1
+                                                 (4 GHC.TypeNats.- 1)
+                                                 (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                              '['[]])
+                                         Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                                 (Data.Tensor.Static.NatsFromTo'
+                                                                    1
+                                                                    (4 GHC.TypeNats.- 1)
+                                                                    (1
+                                                                     GHC.TypeNats.<=? (4
+                                                                                       GHC.TypeNats.- 1)))
+                                                                 ('[0]
+                                                                    : Data.Tensor.Static.Sequence'
+                                                                        (Data.Tensor.Static.NatsFromTo'
+                                                                           1
+                                                                           (4 GHC.TypeNats.- 1)
+                                                                           (1
+                                                                            GHC.TypeNats.<=? (4
+                                                                                              GHC.TypeNats.- 1)))
+                                                                        '['[]]))))
+                            $d(%,,%)))
+                      `cast` <Co:39>)
+              of cobox2
+              { __DEFAULT ->
+              let {
+                $d(%,,%)1
+                  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                      Data.Tensor.Static.IsTensor
+                        (Data.Tensor.Static.NormalizeDims
+                           (Data.Type.Bool.If
+                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                        Float,
+                      Data.Tensor.Static.SetSliceElemsWrk
+                        (Data.Tensor.Static.ElemsInSlice''
+                           '[0]
+                           (Data.Type.Bool.If
+                              (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                           (Data.Tensor.Static.SliceEndIndex
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                              '[4])
+                           : Data.Tensor.Static.ElemsInSlice'
+                               (0 : Data.Type.Bool.If
+                                      (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                      '[x1]
+                                      (TypeError ...))
+                               (0 : Data.Tensor.Static.SliceEndIndex
+                                      (Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[x1]
+                                         (TypeError ...))
+                                      (Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[1]
+                                         (TypeError ...))
+                                      '[4])
+                               (Data.Tensor.Static.Sequence''
+                                  0
+                                  (Data.Tensor.Static.Sequence'
+                                     (Data.Tensor.Static.NatsFromTo'
+                                        1
+                                        (4 GHC.TypeNats.- 1)
+                                        (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                     '['[]])
+                                Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                        (Data.Tensor.Static.NatsFromTo'
+                                                           1
+                                                           (4 GHC.TypeNats.- 1)
+                                                           (1
+                                                            GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                                        ('[0]
+                                                           : Data.Tensor.Static.Sequence'
+                                                               (Data.Tensor.Static.NatsFromTo'
+                                                                  1
+                                                                  (4 GHC.TypeNats.- 1)
+                                                                  (1
+                                                                   GHC.TypeNats.<=? (4
+                                                                                     GHC.TypeNats.- 1)))
+                                                               '['[]]))))
+                $d(%,,%)1
+                  = GHC.Classes.$p2(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                         Data.Tensor.Static.IsTensor
+                           (Data.Tensor.Static.NormalizeDims
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                           Float,
+                         Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice''
+                              '[0]
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                              (Data.Tensor.Static.SliceEndIndex
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                    '[x1]
+                                    (TypeError ...))
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                                 '[4])
+                              : Data.Tensor.Static.ElemsInSlice'
+                                  (0 : Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[x1]
+                                         (TypeError ...))
+                                  (0 : Data.Tensor.Static.SliceEndIndex
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[x1]
+                                            (TypeError ...))
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[1]
+                                            (TypeError ...))
+                                         '[4])
+                                  (Data.Tensor.Static.Sequence''
+                                     0
+                                     (Data.Tensor.Static.Sequence'
+                                        (Data.Tensor.Static.NatsFromTo'
+                                           1
+                                           (4 GHC.TypeNats.- 1)
+                                           (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                        '['[]])
+                                   Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                           (Data.Tensor.Static.NatsFromTo'
+                                                              1
+                                                              (4 GHC.TypeNats.- 1)
+                                                              (1
+                                                               GHC.TypeNats.<=? (4
+                                                                                 GHC.TypeNats.- 1)))
+                                                           ('[0]
+                                                              : Data.Tensor.Static.Sequence'
+                                                                  (Data.Tensor.Static.NatsFromTo'
+                                                                     1
+                                                                     (4 GHC.TypeNats.- 1)
+                                                                     (1
+                                                                      GHC.TypeNats.<=? (4
+                                                                                        GHC.TypeNats.- 1)))
+                                                                  '['[]]))))
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                         Data.Tensor.Static.IsTensor
+                           (Data.Tensor.Static.NormalizeDims
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                           Float,
+                         Data.Tensor.Static.SetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice''
+                              '[0]
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[x1] (TypeError ...))
+                              (Data.Tensor.Static.SliceEndIndex
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                    '[x1]
+                                    (TypeError ...))
+                                 (Data.Type.Bool.If
+                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))
+                                 '[4])
+                              : Data.Tensor.Static.ElemsInSlice'
+                                  (0 : Data.Type.Bool.If
+                                         (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                         '[x1]
+                                         (TypeError ...))
+                                  (0 : Data.Tensor.Static.SliceEndIndex
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[x1]
+                                            (TypeError ...))
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[1]
+                                            (TypeError ...))
+                                         '[4])
+                                  (Data.Tensor.Static.Sequence''
+                                     0
+                                     (Data.Tensor.Static.Sequence'
+                                        (Data.Tensor.Static.NatsFromTo'
+                                           1
+                                           (4 GHC.TypeNats.- 1)
+                                           (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                        '['[]])
+                                   Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                           (Data.Tensor.Static.NatsFromTo'
+                                                              1
+                                                              (4 GHC.TypeNats.- 1)
+                                                              (1
+                                                               GHC.TypeNats.<=? (4
+                                                                                 GHC.TypeNats.- 1)))
+                                                           ('[0]
+                                                              : Data.Tensor.Static.Sequence'
+                                                                  (Data.Tensor.Static.NatsFromTo'
+                                                                     1
+                                                                     (4 GHC.TypeNats.- 1)
+                                                                     (1
+                                                                      GHC.TypeNats.<=? (4
+                                                                                        GHC.TypeNats.- 1)))
+                                                                  '['[]]))))
+                      $d(%,%)2 } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[1]
+                                       (TypeError ...)))
+                                 Float)
+                            @ (Data.Tensor.Static.SetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice''
+                                    '[0]
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[x1]
+                                       (TypeError ...))
+                                    (Data.Tensor.Static.SliceEndIndex
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[1]
+                                          (TypeError ...))
+                                       '[4])
+                                    : Data.Tensor.Static.ElemsInSlice'
+                                        (0 : Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[x1]
+                                               (TypeError ...))
+                                        (0 : Data.Tensor.Static.SliceEndIndex
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[x1]
+                                                  (TypeError ...))
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[1]
+                                                  (TypeError ...))
+                                               '[4])
+                                        (Data.Tensor.Static.Sequence''
+                                           0
+                                           (Data.Tensor.Static.Sequence'
+                                              (Data.Tensor.Static.NatsFromTo'
+                                                 1
+                                                 (4 GHC.TypeNats.- 1)
+                                                 (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                              '['[]])
+                                         Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                                 (Data.Tensor.Static.NatsFromTo'
+                                                                    1
+                                                                    (4 GHC.TypeNats.- 1)
+                                                                    (1
+                                                                     GHC.TypeNats.<=? (4
+                                                                                       GHC.TypeNats.- 1)))
+                                                                 ('[0]
+                                                                    : Data.Tensor.Static.Sequence'
+                                                                        (Data.Tensor.Static.NatsFromTo'
+                                                                           1
+                                                                           (4 GHC.TypeNats.- 1)
+                                                                           (1
+                                                                            GHC.TypeNats.<=? (4
+                                                                                              GHC.TypeNats.- 1)))
+                                                                        '['[]]))))
+                            $d(%,,%)1))
+                      `cast` <Co:12>)
+              of cobox3
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Type.Bool.If
+                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...))))
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ (Data.Tensor.Static.NormalizeDims
+                              (Data.Type.Bool.If
+                                 (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                         @ Float
+                         (GHC.Classes.$p2(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[1]
+                                       (TypeError ...)))
+                                 Float)
+                            @ (Data.Tensor.Static.SetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice''
+                                    '[0]
+                                    (Data.Type.Bool.If
+                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                       '[x1]
+                                       (TypeError ...))
+                                    (Data.Tensor.Static.SliceEndIndex
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[x1]
+                                          (TypeError ...))
+                                       (Data.Type.Bool.If
+                                          (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                          '[1]
+                                          (TypeError ...))
+                                       '[4])
+                                    : Data.Tensor.Static.ElemsInSlice'
+                                        (0 : Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[x1]
+                                               (TypeError ...))
+                                        (0 : Data.Tensor.Static.SliceEndIndex
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[x1]
+                                                  (TypeError ...))
+                                               (Data.Type.Bool.If
+                                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                  '[1]
+                                                  (TypeError ...))
+                                               '[4])
+                                        (Data.Tensor.Static.Sequence''
+                                           0
+                                           (Data.Tensor.Static.Sequence'
+                                              (Data.Tensor.Static.NatsFromTo'
+                                                 1
+                                                 (4 GHC.TypeNats.- 1)
+                                                 (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                              '['[]])
+                                         Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                                 (Data.Tensor.Static.NatsFromTo'
+                                                                    1
+                                                                    (4 GHC.TypeNats.- 1)
+                                                                    (1
+                                                                     GHC.TypeNats.<=? (4
+                                                                                       GHC.TypeNats.- 1)))
+                                                                 ('[0]
+                                                                    : Data.Tensor.Static.Sequence'
+                                                                        (Data.Tensor.Static.NatsFromTo'
+                                                                           1
+                                                                           (4 GHC.TypeNats.- 1)
+                                                                           (1
+                                                                            GHC.TypeNats.<=? (4
+                                                                                              GHC.TypeNats.- 1)))
+                                                                        '['[]]))))
+                            $d(%,,%)1))
+                      `cast` <Co:39>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ [GHC.Types.Nat]
+                     @ [GHC.Types.Nat]
+                     @ (Data.Tensor.Static.NormalizeDims
+                          (Data.Type.Bool.If
+                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)) '[1] (TypeError ...)))
+                     @ '[]
+                     ((GHC.Classes.$p2(%,%)
+                         @ ((Data.Tensor.Static.IsTensor '[4, 4] Float,
+                             Data.Tensor.Static.IsTensor
+                               (Data.Tensor.Static.NormalizeDims
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[1]
+                                     (TypeError ...)))
+                               Float,
+                             Data.Tensor.Static.GetSliceElemsWrk
+                               (Data.Tensor.Static.ElemsInSlice''
+                                  '[0]
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[x1]
+                                     (TypeError ...))
+                                  (Data.Tensor.Static.SliceEndIndex
+                                     (Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[x1]
+                                        (TypeError ...))
+                                     (Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[1]
+                                        (TypeError ...))
+                                     '[4])
+                                  : Data.Tensor.Static.ElemsInSlice'
+                                      (0 : Data.Type.Bool.If
+                                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                             '[x1]
+                                             (TypeError ...))
+                                      (0 : Data.Tensor.Static.SliceEndIndex
+                                             (Data.Type.Bool.If
+                                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                '[x1]
+                                                (TypeError ...))
+                                             (Data.Type.Bool.If
+                                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                '[1]
+                                                (TypeError ...))
+                                             '[4])
+                                      (Data.Tensor.Static.Sequence''
+                                         0
+                                         (Data.Tensor.Static.Sequence'
+                                            (Data.Tensor.Static.NatsFromTo'
+                                               1
+                                               (4 GHC.TypeNats.- 1)
+                                               (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                            '['[]])
+                                       Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                               (Data.Tensor.Static.NatsFromTo'
+                                                                  1
+                                                                  (4 GHC.TypeNats.- 1)
+                                                                  (1
+                                                                   GHC.TypeNats.<=? (4
+                                                                                     GHC.TypeNats.- 1)))
+                                                               ('[0]
+                                                                  : Data.Tensor.Static.Sequence'
+                                                                      (Data.Tensor.Static.NatsFromTo'
+                                                                         1
+                                                                         (4 GHC.TypeNats.- 1)
+                                                                         (1
+                                                                          GHC.TypeNats.<=? (4
+                                                                                            GHC.TypeNats.- 1)))
+                                                                      '['[]])))),
+                            (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                             Data.Tensor.Static.IsTensor
+                               (Data.Tensor.Static.NormalizeDims
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[1]
+                                     (TypeError ...)))
+                               Float,
+                             Data.Tensor.Static.SetSliceElemsWrk
+                               (Data.Tensor.Static.ElemsInSlice''
+                                  '[0]
+                                  (Data.Type.Bool.If
+                                     (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                     '[x1]
+                                     (TypeError ...))
+                                  (Data.Tensor.Static.SliceEndIndex
+                                     (Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[x1]
+                                        (TypeError ...))
+                                     (Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[1]
+                                        (TypeError ...))
+                                     '[4])
+                                  : Data.Tensor.Static.ElemsInSlice'
+                                      (0 : Data.Type.Bool.If
+                                             (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                             '[x1]
+                                             (TypeError ...))
+                                      (0 : Data.Tensor.Static.SliceEndIndex
+                                             (Data.Type.Bool.If
+                                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                '[x1]
+                                                (TypeError ...))
+                                             (Data.Type.Bool.If
+                                                (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                '[1]
+                                                (TypeError ...))
+                                             '[4])
+                                      (Data.Tensor.Static.Sequence''
+                                         0
+                                         (Data.Tensor.Static.Sequence'
+                                            (Data.Tensor.Static.NatsFromTo'
+                                               1
+                                               (4 GHC.TypeNats.- 1)
+                                               (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                            '['[]])
+                                       Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                               (Data.Tensor.Static.NatsFromTo'
+                                                                  1
+                                                                  (4 GHC.TypeNats.- 1)
+                                                                  (1
+                                                                   GHC.TypeNats.<=? (4
+                                                                                     GHC.TypeNats.- 1)))
+                                                               ('[0]
+                                                                  : Data.Tensor.Static.Sequence'
+                                                                      (Data.Tensor.Static.NatsFromTo'
+                                                                         1
+                                                                         (4 GHC.TypeNats.- 1)
+                                                                         (1
+                                                                          GHC.TypeNats.<=? (4
+                                                                                            GHC.TypeNats.- 1)))
+                                                                      '['[]])))))
+                         @ ((Data.Tensor.Static.NormalizeDims
+                               (Data.Type.Bool.If
+                                  (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                  '[1]
+                                  (TypeError ...)) :: [GHC.Types.Nat])
+                            ~
+                            ('[] :: [GHC.Types.Nat]))
+                         $d(%,%)1)
+                      `cast` <Co:40>)
+              of cobox5
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                            @ (Type.List.DemoteWith
+                                 [GHC.Types.Nat]
+                                 ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                 (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                                 (Data.Tensor.Static.Sequence
+                                    (Data.Tensor.Static.IndexesRanges'
+                                       '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                                       (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))))
+                            (GHC.Classes.$p3(%,,,%)
+                               @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                               @ (((Data.Tensor.Static.IsTensor '[4, 4] Float,
+                                    Data.Tensor.Static.IsTensor
+                                      (Data.Tensor.Static.NormalizeDims
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[1]
+                                            (TypeError ...)))
+                                      Float,
+                                    Data.Tensor.Static.GetSliceElemsWrk
+                                      (Data.Tensor.Static.ElemsInSlice''
+                                         '[0]
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[x1]
+                                            (TypeError ...))
+                                         (Data.Tensor.Static.SliceEndIndex
+                                            (Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[x1]
+                                               (TypeError ...))
+                                            (Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[1]
+                                               (TypeError ...))
+                                            '[4])
+                                         : Data.Tensor.Static.ElemsInSlice'
+                                             (0 : Data.Type.Bool.If
+                                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                    '[x1]
+                                                    (TypeError ...))
+                                             (0 : Data.Tensor.Static.SliceEndIndex
+                                                    (Data.Type.Bool.If
+                                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                       '[x1]
+                                                       (TypeError ...))
+                                                    (Data.Type.Bool.If
+                                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                       '[1]
+                                                       (TypeError ...))
+                                                    '[4])
+                                             (Data.Tensor.Static.Sequence''
+                                                0
+                                                (Data.Tensor.Static.Sequence'
+                                                   (Data.Tensor.Static.NatsFromTo'
+                                                      1
+                                                      (4 GHC.TypeNats.- 1)
+                                                      (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                                   '['[]])
+                                              Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                                      (Data.Tensor.Static.NatsFromTo'
+                                                                         1
+                                                                         (4 GHC.TypeNats.- 1)
+                                                                         (1
+                                                                          GHC.TypeNats.<=? (4
+                                                                                            GHC.TypeNats.- 1)))
+                                                                      ('[0]
+                                                                         : Data.Tensor.Static.Sequence'
+                                                                             (Data.Tensor.Static.NatsFromTo'
+                                                                                1
+                                                                                (4 GHC.TypeNats.- 1)
+                                                                                (1
+                                                                                 GHC.TypeNats.<=? (4
+                                                                                                   GHC.TypeNats.- 1)))
+                                                                             '['[]])))),
+                                   (Data.Tensor.Static.IsTensor '[4, 4] Float,
+                                    Data.Tensor.Static.IsTensor
+                                      (Data.Tensor.Static.NormalizeDims
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[1]
+                                            (TypeError ...)))
+                                      Float,
+                                    Data.Tensor.Static.SetSliceElemsWrk
+                                      (Data.Tensor.Static.ElemsInSlice''
+                                         '[0]
+                                         (Data.Type.Bool.If
+                                            (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                            '[x1]
+                                            (TypeError ...))
+                                         (Data.Tensor.Static.SliceEndIndex
+                                            (Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[x1]
+                                               (TypeError ...))
+                                            (Data.Type.Bool.If
+                                               (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                               '[1]
+                                               (TypeError ...))
+                                            '[4])
+                                         : Data.Tensor.Static.ElemsInSlice'
+                                             (0 : Data.Type.Bool.If
+                                                    (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                    '[x1]
+                                                    (TypeError ...))
+                                             (0 : Data.Tensor.Static.SliceEndIndex
+                                                    (Data.Type.Bool.If
+                                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                       '[x1]
+                                                       (TypeError ...))
+                                                    (Data.Type.Bool.If
+                                                       (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                                       '[1]
+                                                       (TypeError ...))
+                                                    '[4])
+                                             (Data.Tensor.Static.Sequence''
+                                                0
+                                                (Data.Tensor.Static.Sequence'
+                                                   (Data.Tensor.Static.NatsFromTo'
+                                                      1
+                                                      (4 GHC.TypeNats.- 1)
+                                                      (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))
+                                                   '['[]])
+                                              Data.Tensor.Static.++ Data.Tensor.Static.Sequence'
+                                                                      (Data.Tensor.Static.NatsFromTo'
+                                                                         1
+                                                                         (4 GHC.TypeNats.- 1)
+                                                                         (1
+                                                                          GHC.TypeNats.<=? (4
+                                                                                            GHC.TypeNats.- 1)))
+                                                                      ('[0]
+                                                                         : Data.Tensor.Static.Sequence'
+                                                                             (Data.Tensor.Static.NatsFromTo'
+                                                                                1
+                                                                                (4 GHC.TypeNats.- 1)
+                                                                                (1
+                                                                                 GHC.TypeNats.<=? (4
+                                                                                                   GHC.TypeNats.- 1)))
+                                                                             '['[]]))))),
+                                  (Data.Tensor.Static.NormalizeDims
+                                     (Data.Type.Bool.If
+                                        (x1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1))
+                                        '[1]
+                                        (TypeError ...)) :: [GHC.Types.Nat])
+                                  ~
+                                  ('[] :: [GHC.Types.Nat]))
+                               @ (Data.Tensor.Static.IsTensor
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float,
+                                  Type.List.DemoteWith
+                                    [GHC.Types.Nat]
+                                    ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                    (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                                          (1 GHC.TypeNats.<=? (4 GHC.TypeNats.- 1)))))
+                               @ (Data.Matrix.Static.Sign x1)
+                               (w `cast` <Co:5736>))))
+                      `cast` <Co:16>)
+              of cobox6
+              { __DEFAULT ->
+              let {
+                $d(%,%)3 :: MinorMatrix 0 x1 4 Float
+                $d(%,%)3
+                  = GHC.Classes.$p3(%,,,%)
+                      @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                      @ (Data.Tensor.Static.TensorElem '[0, x1] '[4, 4] Float)
+                      @ (MinorMatrix 0 x1 4 Float)
+                      @ (Data.Matrix.Static.Sign x1)
+                      (w `cast` <Co:13>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor
+                                 '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                            @ (Type.List.DemoteWith
+                                 [GHC.Types.Nat]
+                                 ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                 (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                                 (Data.Tensor.Static.AllIndexes
+                                    '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                            $d(%,%)3))
+                      `cast` <Co:16>)
+              of cobox7
+              { __DEFAULT ->
+              let {
+                $d(%,%)4 :: Data.Tensor.Static.TensorElem '[0, x1] '[4, 4] Float
+                $d(%,%)4
+                  = GHC.Classes.$p2(%,,,%)
+                      @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                      @ (Data.Tensor.Static.TensorElem '[0, x1] '[4, 4] Float)
+                      @ (MinorMatrix 0 x1 4 Float)
+                      @ (Data.Matrix.Static.Sign x1)
+                      (w `cast` <Co:13>) } in
+              let {
+                $d(%,%)5 :: Data.Tensor.Static.SubtensorCtx '[0, x1] '[4, 4] Float
+                $d(%,%)5
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.SubtensorCtx '[0, x1] '[4, 4] Float)
+                      @ ((Data.Tensor.Static.NormalizeDims
+                            (Data.Tensor.Static.SubtensorDims
+                               '[0, x1] '[4, 4]) :: [GHC.Types.Nat])
+                         ~
+                         ('[] :: [GHC.Types.Nat]))
+                      $d(%,%)4 } in
+              let {
+                $d(%,,%)2 :: Data.Tensor.Static.GetSubtensor '[0, x1] '[4, 4] Float
+                $d(%,,%)2
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.GetSubtensor '[0, x1] '[4, 4] Float)
+                      @ (Data.Tensor.Static.SetSubtensor '[0, x1] '[4, 4] Float)
+                      $d(%,%)5 } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                                 Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                                    '[4, 4]))
+                            $d(%,,%)2))
+                      `cast` <Co:12>)
+              of cobox8
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])))
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ (Data.Tensor.Static.NormalizeDims
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                         @ Float
+                         (GHC.Classes.$p2(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                                 Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                                    '[4, 4]))
+                            $d(%,,%)2))
+                      `cast` <Co:22>)
+              of cobox9
+              { __DEFAULT ->
+              let {
+                $d(%,,%)3 :: Data.Tensor.Static.SetSubtensor '[0, x1] '[4, 4] Float
+                $d(%,,%)3
+                  = GHC.Classes.$p2(%,%)
+                      @ (Data.Tensor.Static.GetSubtensor '[0, x1] '[4, 4] Float)
+                      @ (Data.Tensor.Static.SetSubtensor '[0, x1] '[4, 4] Float)
+                      $d(%,%)5 } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                                 Float)
+                            @ (Data.Tensor.Static.SetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                                    '[4, 4]))
+                            $d(%,,%)3))
+                      `cast` <Co:12>)
+              of cobox10
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])))
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ (Data.Tensor.Static.NormalizeDims
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                         @ Float
+                         (GHC.Classes.$p2(%,,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.IsTensor
+                                 (Data.Tensor.Static.NormalizeDims
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                                 Float)
+                            @ (Data.Tensor.Static.SetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                                    (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                                    '[4, 4]))
+                            $d(%,,%)3))
+                      `cast` <Co:22>)
+              of cobox11
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ [GHC.Types.Nat]
+                     @ [GHC.Types.Nat]
+                     @ (Data.Tensor.Static.NormalizeDims
+                          (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                     @ '[]
+                     ((GHC.Classes.$p2(%,%)
+                         @ (Data.Tensor.Static.SubtensorCtx '[0, x1] '[4, 4] Float)
+                         @ ((Data.Tensor.Static.NormalizeDims
+                               (Data.Tensor.Static.SubtensorDims
+                                  '[0, x1] '[4, 4]) :: [GHC.Types.Nat])
+                            ~
+                            ('[] :: [GHC.Types.Nat]))
+                         $d(%,%)4)
+                      `cast` <Co:23>)
+              of cobox12
+              { __DEFAULT ->
+              case ((GHC.Classes.$p4(%,,,%)
+                       @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                       @ (Data.Tensor.Static.TensorElem '[0, x1] '[4, 4] Float)
+                       @ (MinorMatrix 0 x1 4 Float)
+                       @ (Data.Matrix.Static.Sign x1)
+                       (w `cast` <Co:13>))
+                    `cast` <Co:2>)
+                     @ Float GHC.Float.$fNumFloat
+              of
+              { GHC.Types.F# x ->
+              let {
+                $dIsTensor1
+                  :: Data.Tensor.Static.IsTensor
+                       (Data.Tensor.Static.NormalizeDims
+                          (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                       Float
+                $dIsTensor1
+                  = GHC.Classes.$p2(%,,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.IsTensor
+                           (Data.Tensor.Static.NormalizeDims
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                           Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                              '[4, 4]))
+                      $d(%,,%)2 } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims
+                          (Data.Tensor.Static.NormalizeDims
+                             (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])))
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ (Data.Tensor.Static.NormalizeDims
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                         @ Float
+                         $dIsTensor1)
+                      `cast` <Co:22>)
+              of cobox24
+              { __DEFAULT ->
+              let {
+                $dIsTensor2 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor2
+                  = GHC.Classes.$p1(%,,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.IsTensor
+                           (Data.Tensor.Static.NormalizeDims
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                           Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                              (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                              '[4, 4]))
+                      $d(%,,%)2 } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor2)
+                      `cast` <Co:12>)
+              of cobox25
+              { __DEFAULT ->
+              case (Data.Tensor.Static.unsafeFromList
+                      @ (Data.Tensor.Static.NormalizeDims
+                           (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                      @ Float
+                      $dIsTensor1
+                      (((GHC.Classes.$p3(%,,%)
+                           @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                           @ (Data.Tensor.Static.IsTensor
+                                (Data.Tensor.Static.NormalizeDims
+                                   (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4]))
+                                Float)
+                           @ (Data.Tensor.Static.GetSliceElemsWrk
+                                (Data.Tensor.Static.ElemsInSlice
+                                   (Data.Tensor.Static.SubtensorStartIndex '[0, x1] '[4, 4])
+                                   (Data.Tensor.Static.SubtensorDims '[0, x1] '[4, 4])
+                                   '[4, 4]))
+                           $d(%,,%)2)
+                        `cast` <Co:44>)
+                         @ Float
+                         (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor2 m)))
+                   `cast` <Co:8>
+              of
+              { GHC.Types.F# y ->
+              case ((GHC.Classes.$p1(%,,,%)
+                       @ (Determinant (4 GHC.TypeNats.- 1) Float)
+                       @ (Data.Tensor.Static.TensorElem '[0, x1] '[4, 4] Float)
+                       @ (MinorMatrix 0 x1 4 Float)
+                       @ (Data.Matrix.Static.Sign x1)
+                       (w `cast` <Co:13>))
+                    `cast` <Co:5>)
+                     GHC.Float.$fNumFloat
+                     (let {
+                        $dIsTensor4
+                          :: Data.Tensor.Static.IsTensor
+                               '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float
+                        $dIsTensor4
+                          = GHC.Classes.$p1(%,%)
+                              @ (Data.Tensor.Static.IsTensor
+                                   '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                              @ (Type.List.DemoteWith
+                                   [GHC.Types.Nat]
+                                   ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                   (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                                   (Data.Tensor.Static.AllIndexes
+                                      '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                              $d(%,%)3 } in
+                      case GHC.Types.HEq_sc
+                             @ Bool
+                             @ Bool
+                             @ (Data.Tensor.Static.PositiveDims
+                                  '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1])
+                             @ 'True
+                             ((Data.Tensor.Static.$p1IsTensor
+                                 @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] @ Float $dIsTensor4)
+                              `cast` <Co:16>)
+                      of cobox14
+                      { __DEFAULT ->
+                      Data.Tensor.Static.unsafeFromList
+                        @ '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                        @ Float
+                        $dIsTensor4
+                        (((GHC.Classes.$p2(%,%)
+                             @ (Data.Tensor.Static.IsTensor
+                                  '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1] Float)
+                             @ (Type.List.DemoteWith
+                                  [GHC.Types.Nat]
+                                  ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                                  (Data.Matrix.Static.MinorMatrixGoSym4 0 x1 4 Float)
+                                  (Data.Tensor.Static.AllIndexes
+                                     '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]))
+                             $d(%,%)3)
+                          `cast` <Co:25>)
+                           @ Float (lvl23 @ x1))
+                      })
+              of
+              { GHC.Types.F# y1 ->
+              GHC.Prim.timesFloat# (GHC.Prim.timesFloat# x y) y1
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              }
+              } } in
+      case $wf2
+             @ 0
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith251
+              `cast` <Co:22703>)
+      of ww
+      { __DEFAULT ->
+      case $wf2
+             @ 1
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith232
+              `cast` <Co:22793>)
+      of ww1
+      { __DEFAULT ->
+      case $wf2
+             @ 2
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith213
+              `cast` <Co:22793>)
+      of ww2
+      { __DEFAULT ->
+      case $wf2
+             @ 3
+             (CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith107
+              `cast` <Co:22793>)
+      of ww3
+      { __DEFAULT ->
+      case GHC.Prim.divideFloat#
+             1.0#
+             (GHC.Prim.plusFloat#
+                ww (GHC.Prim.plusFloat# ww1 (GHC.Prim.plusFloat# ww2 ww3)))
+      of wild4
+      { __DEFAULT ->
+      (TensorInstances.Tensor'4'4'Float
+         (GHC.Prim.timesFloat# dt1 wild4)
+         (GHC.Prim.timesFloat# dt3 wild4)
+         (GHC.Prim.timesFloat# dt5 wild4)
+         (GHC.Prim.timesFloat# dt7 wild4)
+         (GHC.Prim.timesFloat# dt9 wild4)
+         (GHC.Prim.timesFloat# dt11 wild4)
+         (GHC.Prim.timesFloat# dt13 wild4)
+         (GHC.Prim.timesFloat# dt15 wild4)
+         (GHC.Prim.timesFloat# dt17 wild4)
+         (GHC.Prim.timesFloat# dt19 wild4)
+         (GHC.Prim.timesFloat# dt21 wild4)
+         (GHC.Prim.timesFloat# dt23 wild4)
+         (GHC.Prim.timesFloat# dt25 wild4)
+         (GHC.Prim.timesFloat# dt27 wild4)
+         (GHC.Prim.timesFloat# dt29 wild4)
+         (GHC.Prim.timesFloat# dt31 wild4))
+      `cast` <Co:2>
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+
+
+------ Local rules for imported ids --------
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith2
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith4
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith6
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith8
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith10
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith12
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith14
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 3 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 3 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith16
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith30
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith32
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith33
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith46
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith47
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith48
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith59
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith60
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith61
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith34
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith36
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith37
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith49
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith50
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith51
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith62
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith63
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith64
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith38
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith40
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 2 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 2 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith41
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith52
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith53
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 1 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 1 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith54
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith65
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith66
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       3
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 3 0 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         3 0 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith67
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith72
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith88
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith97
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith74
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith89
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith98
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith76
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith78
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith79
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith80
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith81
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith82
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 3 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 3 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith83
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith90
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith91
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith92
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith93
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith94
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith95
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 3 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 3 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith96
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith99
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith100
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith101
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith102
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith103
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith104
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       3
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 3 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith105
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith113
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith115
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith116
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith117
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith118
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith119
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith120
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith121
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 2 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 2 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith122
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith127
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith128
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith129
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith130
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith131
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith132
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith133
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith134
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 1 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 1 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith135
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith140
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith141
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith142
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith143
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith144
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith145
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith146
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith147
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       2
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 2 0 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         2 0 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith148
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith157
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith158
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith159
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith160
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith161
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith162
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith163
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith164
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 2 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 2 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith165
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith170
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith171
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith172
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith173
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith174
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith175
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith176
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith177
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 1 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 1 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith178
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith183
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith184
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith185
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith186
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith187
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith188
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith189
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith190
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       1
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 1 0 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         1 0 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith191
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith199
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith200
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith201
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith202
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith203
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith204
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith205
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith206
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       2
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 2 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith207
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith218
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith219
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith220
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith221
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith222
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith223
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith224
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith225
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       1
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 1 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith226
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '[] @ '[2,
+                                                                                                        2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[2, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '[]
+                                                    @ '[2, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith237
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[2, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[2, 2]]
+                                                    @ '[2, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith238
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[2,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[2, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[2, 1], '[2, 2]]
+                                                    @ '[2, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith239
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[1, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith240
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[1, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith241
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[1,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[1, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[1, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith242
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            2]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[0, 2])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                                                        '[2, 2]]
+                                                    @ '[0, 2]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith243
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            1]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[0, 1])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1], '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0],
+                                                        '[2, 1], '[2, 2]]
+                                                    @ '[0, 1]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith244
+"SPEC/CoreDump.Matrix.Inverse $fDemoteWithkxkctxctx:_$cdemoteWith @ [Nat] @ (TyFun
+                                                                              [Nat] Constraint
+                                                                            -> *) @ (MinorMatrixGoSym4
+                                                                                       0
+                                                                                       0
+                                                                                       4
+                                                                                       Float) @ '['[0,
+                                                                                                    1],
+                                                                                                  '[0,
+                                                                                                    2],
+                                                                                                  '[1,
+                                                                                                    0],
+                                                                                                  '[1,
+                                                                                                    1],
+                                                                                                  '[1,
+                                                                                                    2],
+                                                                                                  '[2,
+                                                                                                    0],
+                                                                                                  '[2,
+                                                                                                    1],
+                                                                                                  '[2,
+                                                                                                    2]] @ '[0,
+                                                                                                            0]"
+    forall (irred
+              :: Type.List.MkCtx
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '[0, 0])
+           ($dDemoteWith
+              :: Type.List.DemoteWith
+                   [GHC.Types.Nat]
+                   (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                   '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2], '[2, 0], '[2, 1],
+                     '[2, 2]]).
+      Type.List.$fDemoteWithkxkctxctx:_$cdemoteWith @ [GHC.Types.Nat]
+                                                    @ (Data.Singletons.TyFun
+                                                         [GHC.Types.Nat] Constraint
+                                                       -> *)
+                                                    @ (Data.Matrix.Static.MinorMatrixGoSym4
+                                                         0 0 4 Float)
+                                                    @ '['[0, 1], '[0, 2], '[1, 0], '[1, 1], '[1, 2],
+                                                        '[2, 0], '[2, 1], '[2, 2]]
+                                                    @ '[0, 0]
+                                                    $dDemoteWith
+                                                    irred
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith245
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk134
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk133
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk132
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk131
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk130
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk129
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk128
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk127
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk126
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk125
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'True,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'True, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk15
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk12
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk13
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk14
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.Inverse $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+"SPEC/CoreDump.Matrix.Inverse $fSetSliceElemsWrk:_$csetSliceElemsWrk @ '['False,
+                                                                        'True, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dSetSliceElemsWrk
+              :: Data.Tensor.Static.SetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fSetSliceElemsWrk:_$csetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dSetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.Inverse $fSetSliceElemsWrk:_$csetSliceElemsWrk @ '['True,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dSetSliceElemsWrk
+              :: Data.Tensor.Static.SetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fSetSliceElemsWrk:_$csetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dSetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.Inverse $fSetSliceElemsWrk:_$csetSliceElemsWrk @ '['False,
+                                                                        'False, 'True, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False, 'False,
+                                                                        'False, 'False]"
+    forall ($dSetSliceElemsWrk
+              :: Data.Tensor.Static.SetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fSetSliceElemsWrk:_$csetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dSetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:_$csetSliceElemsWrk
+"SPEC/CoreDump.Matrix.Inverse $fSetSliceElemsWrk:0_$csetSliceElemsWrk @ '['False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False, 'False,
+                                                                         'False, 'False]"
+    forall ($dSetSliceElemsWrk
+              :: Data.Tensor.Static.SetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fSetSliceElemsWrk:0_$csetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dSetSliceElemsWrk
+      = CoreDump.Matrix.Inverse.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fSetSliceElemsWrk:0_$csetSliceElemsWrk
+
+ tests/CoreDump/Matrix/Inverse.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.Inverse where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+-- FIXME: Generates terrible Core.
+inverse_ :: Matrix 4 4 Float -> Matrix 4 4 Float
+inverse_ = inverse
+ tests/CoreDump/Matrix/MapColElems.dump-simpl.ghc821.golden view
@@ -0,0 +1,71 @@+
+==================== Tidy Core ====================
+2017-09-08 01:37:32.0052946 UTC
+
+Result size of Tidy Core
+  = {terms: 57, types: 52, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MapColElems.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.MapColElems.$trModule2
+  = "CoreDump.Matrix.MapColElems"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MapColElems.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.MapColElems.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.MapColElems.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MapColElems.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.MapColElems.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MapColElems.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.MapColElems.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.MapColElems.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MapColElems.$trModule :: GHC.Types.Module
+CoreDump.Matrix.MapColElems.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.MapColElems.$trModule3
+      CoreDump.Matrix.MapColElems.$trModule1
+
+-- RHS size: {terms: 42, types: 37, coercions: 3, joins: 0/0}
+mapColElems_
+  :: Matrix 4 4 Float -> (Float -> Float) -> Matrix 4 4 Float
+mapColElems_
+  = \ (t :: Data.Tensor.Static.Tensor '[4, 4] Float)
+      (f :: Float -> Float) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 ->
+      case f (GHC.Types.F# dt1) of { GHC.Types.F# dt17 ->
+      case f (GHC.Types.F# dt5) of { GHC.Types.F# dt19 ->
+      case f (GHC.Types.F# dt9) of { GHC.Types.F# dt21 ->
+      case f (GHC.Types.F# dt13) of { GHC.Types.F# dt23 ->
+      (TensorInstances.Tensor'4'4'Float
+         dt
+         dt17
+         dt2
+         dt3
+         dt4
+         dt19
+         dt6
+         dt7
+         dt8
+         dt21
+         dt10
+         dt11
+         dt12
+         dt23
+         dt14
+         dt15)
+      `cast` <Co:2>
+      }
+      }
+      }
+      }
+      }
+
+
+ tests/CoreDump/Matrix/MapColElems.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.MapColElems where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+mapColElems_ :: Matrix 4 4 Float -> (Float -> Float) -> Matrix 4 4 Float
+mapColElems_ = mapColElems @1
+ tests/CoreDump/Matrix/MapRowElems.dump-simpl.ghc821.golden view
@@ -0,0 +1,71 @@+
+==================== Tidy Core ====================
+2017-09-08 01:37:31.1172524 UTC
+
+Result size of Tidy Core
+  = {terms: 57, types: 52, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MapRowElems.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.MapRowElems.$trModule2
+  = "CoreDump.Matrix.MapRowElems"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MapRowElems.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.MapRowElems.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.MapRowElems.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MapRowElems.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.MapRowElems.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MapRowElems.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.MapRowElems.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.MapRowElems.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MapRowElems.$trModule :: GHC.Types.Module
+CoreDump.Matrix.MapRowElems.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.MapRowElems.$trModule3
+      CoreDump.Matrix.MapRowElems.$trModule1
+
+-- RHS size: {terms: 42, types: 37, coercions: 3, joins: 0/0}
+mapRowElems_
+  :: Matrix 4 4 Float -> (Float -> Float) -> Matrix 4 4 Float
+mapRowElems_
+  = \ (t :: Data.Tensor.Static.Tensor '[4, 4] Float)
+      (f :: Float -> Float) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 ->
+      case f (GHC.Types.F# dt4) of { GHC.Types.F# dt17 ->
+      case f (GHC.Types.F# dt5) of { GHC.Types.F# dt19 ->
+      case f (GHC.Types.F# dt6) of { GHC.Types.F# dt21 ->
+      case f (GHC.Types.F# dt7) of { GHC.Types.F# dt23 ->
+      (TensorInstances.Tensor'4'4'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt17
+         dt19
+         dt21
+         dt23
+         dt8
+         dt9
+         dt10
+         dt11
+         dt12
+         dt13
+         dt14
+         dt15)
+      `cast` <Co:2>
+      }
+      }
+      }
+      }
+      }
+
+
+ tests/CoreDump/Matrix/MapRowElems.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.MapRowElems where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+mapRowElems_ :: Matrix 4 4 Float -> (Float -> Float) -> Matrix 4 4 Float
+mapRowElems_ = mapRowElems @1
+ tests/CoreDump/Matrix/Minor.dump-simpl.ghc821.golden view
@@ -0,0 +1,4427 @@+
+==================== Tidy Core ====================
+2017-09-12 21:52:27.6778778 UTC
+
+Result size of Tidy Core
+  = {terms: 1,885, types: 5,819, coercions: 336,869, joins: 0/9}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.Minor.$trModule2 = "CoreDump.Matrix.Minor"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.Minor.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.Minor.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.Minor.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.Minor.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.Minor.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$trModule :: GHC.Types.Module
+CoreDump.Matrix.Minor.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.Minor.$trModule3 CoreDump.Matrix.Minor.$trModule1
+
+-- RHS size: {terms: 8, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 -> GHC.Types.[] @ e
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'True, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'True, 'False, 'False, 'False])
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False])
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False])
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 10, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 -> GHC.Types.: @ e x (GHC.Types.[] @ e)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True])
+CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 430,
+              types: 1,855,
+              coercions: 336,245,
+              joins: 0/9}
+minor_ :: Matrix 5 5 Float -> Float
+minor_
+  = \ (x :: Matrix 5 5 Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'5'5'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                         dt20 dt21 dt22 dt23 dt24 ->
+      let {
+        m :: TensorInstances.R:Tensor:Float13
+        m = TensorInstances.Tensor'4'4'Float
+              dt6
+              dt7
+              dt8
+              dt9
+              dt11
+              dt12
+              dt13
+              dt14
+              dt16
+              dt17
+              dt18
+              dt19
+              dt21
+              dt22
+              dt23
+              dt24 } in
+      let {
+        $wf
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+               x1 =>
+             Float
+        $wf
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index1 x1)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index1 x1)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:141>)))
+                      `cast` <Co:12>)
+              of cobox15
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index1 x1)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:18>)))
+                      `cast` <Co:12>)
+              of cobox16
+              { __DEFAULT ->
+              let {
+                $dIsTensor2 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor2
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index0 x1),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index1 x1)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:18>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor2)
+                      `cast` <Co:12>)
+              of cobox18
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index0 x1),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index1 x1)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:18>))
+                    `cast` <Co:32>)
+                     @ Float
+                     (Data.Tensor.Static.toList
+                        @ '[4, 4] @ Float $dIsTensor2 (m `cast` <Co:2>))
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x2 ds1 -> x2
+              }
+              }
+              }
+              } } in
+      case $wf
+             @ '[0, 0]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9265>)
+      of
+      { GHC.Types.F# dt30 ->
+      case $wf
+             @ '[0, 1]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9267>)
+      of
+      { GHC.Types.F# dt32 ->
+      case $wf
+             @ '[0, 2]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+              `cast` <Co:9267>)
+      of
+      { GHC.Types.F# dt34 ->
+      case $wf
+             @ '[1, 0]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9267>)
+      of
+      { GHC.Types.F# dt36 ->
+      case $wf
+             @ '[1, 1]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9269>)
+      of
+      { GHC.Types.F# dt38 ->
+      case $wf
+             @ '[1, 2]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+              `cast` <Co:9269>)
+      of
+      { GHC.Types.F# dt40 ->
+      case $wf
+             @ '[2, 0]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9267>)
+      of
+      { GHC.Types.F# dt42 ->
+      case $wf
+             @ '[2, 1]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9269>)
+      of
+      { GHC.Types.F# dt44 ->
+      case $wf
+             @ '[2, 2]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:9269>)
+      of
+      { GHC.Types.F# dt46 ->
+      let {
+        $wf1
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+               x1 =>
+             Float
+        $wf1
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.MinorMatrixGoSym4 0 1 4 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        1 (Data.Matrix.Static.Index1 x1)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           1 (Data.Matrix.Static.Index1 x1)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:141>)))
+                      `cast` <Co:12>)
+              of cobox15
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        1 (Data.Matrix.Static.Index1 x1)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:18>)))
+                      `cast` <Co:12>)
+              of cobox16
+              { __DEFAULT ->
+              let {
+                $dIsTensor2 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor2
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index0 x1),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  1 (Data.Matrix.Static.Index1 x1)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:18>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor2)
+                      `cast` <Co:12>)
+              of cobox18
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index0 x1),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   1 (Data.Matrix.Static.Index1 x1)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:18>))
+                    `cast` <Co:32>)
+                     @ Float
+                     (Data.Tensor.Static.toList
+                        @ '[4, 4] @ Float $dIsTensor2 (m `cast` <Co:2>))
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x2 ds1 -> x2
+              }
+              }
+              }
+              } } in
+      case $wf1
+             @ '[0, 0]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9307>)
+      of
+      { GHC.Types.F# dt48 ->
+      case $wf1
+             @ '[0, 1]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9337>)
+      of
+      { GHC.Types.F# dt50 ->
+      case $wf1
+             @ '[0, 2]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+              `cast` <Co:9337>)
+      of
+      { GHC.Types.F# dt52 ->
+      case $wf1
+             @ '[1, 0]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9309>)
+      of
+      { GHC.Types.F# dt54 ->
+      case $wf1
+             @ '[1, 1]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9339>)
+      of
+      { GHC.Types.F# dt56 ->
+      case $wf1
+             @ '[1, 2]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+              `cast` <Co:9339>)
+      of
+      { GHC.Types.F# dt58 ->
+      case $wf1
+             @ '[2, 0]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9309>)
+      of
+      { GHC.Types.F# dt60 ->
+      case $wf1
+             @ '[2, 1]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9339>)
+      of
+      { GHC.Types.F# dt62 ->
+      case $wf1
+             @ '[2, 2]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:9339>)
+      of
+      { GHC.Types.F# dt64 ->
+      let {
+        $wf2
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+               x1 =>
+             Float
+        $wf2
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.MinorMatrixGoSym4 0 2 4 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        2 (Data.Matrix.Static.Index1 x1)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           2 (Data.Matrix.Static.Index1 x1)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:141>)))
+                      `cast` <Co:12>)
+              of cobox15
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        2 (Data.Matrix.Static.Index1 x1)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:18>)))
+                      `cast` <Co:12>)
+              of cobox16
+              { __DEFAULT ->
+              let {
+                $dIsTensor2 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor2
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index0 x1),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  2 (Data.Matrix.Static.Index1 x1)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:18>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor2)
+                      `cast` <Co:12>)
+              of cobox18
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index0 x1),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   2 (Data.Matrix.Static.Index1 x1)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:18>))
+                    `cast` <Co:32>)
+                     @ Float
+                     (Data.Tensor.Static.toList
+                        @ '[4, 4] @ Float $dIsTensor2 (m `cast` <Co:2>))
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x2 ds1 -> x2
+              }
+              }
+              }
+              } } in
+      case $wf2
+             @ '[0, 0]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9307>)
+      of
+      { GHC.Types.F# dt66 ->
+      case $wf2
+             @ '[0, 1]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9327>)
+      of
+      { GHC.Types.F# dt68 ->
+      case $wf2
+             @ '[0, 2]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith27
+              `cast` <Co:9337>)
+      of
+      { GHC.Types.F# dt70 ->
+      case $wf2
+             @ '[1, 0]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9309>)
+      of
+      { GHC.Types.F# dt72 ->
+      case $wf2
+             @ '[1, 1]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9329>)
+      of
+      { GHC.Types.F# dt74 ->
+      case $wf2
+             @ '[1, 2]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+              `cast` <Co:9339>)
+      of
+      { GHC.Types.F# dt76 ->
+      case $wf2
+             @ '[2, 0]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9309>)
+      of
+      { GHC.Types.F# dt78 ->
+      case $wf2
+             @ '[2, 1]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9329>)
+      of
+      { GHC.Types.F# dt80 ->
+      case $wf2
+             @ '[2, 2]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:9339>)
+      of
+      { GHC.Types.F# dt82 ->
+      let {
+        $wf3
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+               x1 =>
+             Float
+        $wf3
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.MinorMatrixGoSym4 0 3 4 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        3 (Data.Matrix.Static.Index1 x1)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           3 (Data.Matrix.Static.Index1 x1)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:141>)))
+                      `cast` <Co:12>)
+              of cobox15
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        3 (Data.Matrix.Static.Index1 x1)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:18>)))
+                      `cast` <Co:12>)
+              of cobox16
+              { __DEFAULT ->
+              let {
+                $dIsTensor2 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor2
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index0 x1),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  3 (Data.Matrix.Static.Index1 x1)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:18>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor2)
+                      `cast` <Co:12>)
+              of cobox18
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index0 x1),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   3 (Data.Matrix.Static.Index1 x1)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:18>))
+                    `cast` <Co:32>)
+                     @ Float
+                     (Data.Tensor.Static.toList
+                        @ '[4, 4] @ Float $dIsTensor2 (m `cast` <Co:2>))
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x2 ds1 -> x2
+              }
+              }
+              }
+              } } in
+      case $wf3
+             @ '[0, 0]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9307>)
+      of
+      { GHC.Types.F# dt84 ->
+      case $wf3
+             @ '[0, 1]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9327>)
+      of
+      { GHC.Types.F# dt86 ->
+      case $wf3
+             @ '[0, 2]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9327>)
+      of
+      { GHC.Types.F# dt88 ->
+      case $wf3
+             @ '[1, 0]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9309>)
+      of
+      { GHC.Types.F# dt90 ->
+      case $wf3
+             @ '[1, 1]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9329>)
+      of
+      { GHC.Types.F# dt92 ->
+      case $wf3
+             @ '[1, 2]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9329>)
+      of
+      { GHC.Types.F# dt94 ->
+      case $wf3
+             @ '[2, 0]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9309>)
+      of
+      { GHC.Types.F# dt96 ->
+      case $wf3
+             @ '[2, 1]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9329>)
+      of
+      { GHC.Types.F# dt98 ->
+      case $wf3
+             @ '[2, 2]
+             (CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9329>)
+      of
+      { GHC.Types.F# dt100 ->
+      GHC.Types.F#
+        (GHC.Prim.plusFloat#
+           (GHC.Prim.timesFloat#
+              dt6
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.minusFloat#
+                    (GHC.Prim.timesFloat#
+                       dt30
+                       (GHC.Prim.minusFloat#
+                          (GHC.Prim.timesFloat# dt38 dt46) (GHC.Prim.timesFloat# dt40 dt44)))
+                    (GHC.Prim.timesFloat#
+                       dt32
+                       (GHC.Prim.minusFloat#
+                          (GHC.Prim.timesFloat# dt36 dt46)
+                          (GHC.Prim.timesFloat# dt40 dt42))))
+                 (GHC.Prim.timesFloat#
+                    dt34
+                    (GHC.Prim.minusFloat#
+                       (GHC.Prim.timesFloat# dt36 dt44)
+                       (GHC.Prim.timesFloat# dt38 dt42)))))
+           (GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat#
+                 (GHC.Prim.timesFloat# -1.0# dt7)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.minusFloat#
+                       (GHC.Prim.timesFloat#
+                          dt48
+                          (GHC.Prim.minusFloat#
+                             (GHC.Prim.timesFloat# dt56 dt64) (GHC.Prim.timesFloat# dt58 dt62)))
+                       (GHC.Prim.timesFloat#
+                          dt50
+                          (GHC.Prim.minusFloat#
+                             (GHC.Prim.timesFloat# dt54 dt64)
+                             (GHC.Prim.timesFloat# dt58 dt60))))
+                    (GHC.Prim.timesFloat#
+                       dt52
+                       (GHC.Prim.minusFloat#
+                          (GHC.Prim.timesFloat# dt54 dt62)
+                          (GHC.Prim.timesFloat# dt56 dt60)))))
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat#
+                    dt8
+                    (GHC.Prim.plusFloat#
+                       (GHC.Prim.minusFloat#
+                          (GHC.Prim.timesFloat#
+                             dt66
+                             (GHC.Prim.minusFloat#
+                                (GHC.Prim.timesFloat# dt74 dt82) (GHC.Prim.timesFloat# dt76 dt80)))
+                          (GHC.Prim.timesFloat#
+                             dt68
+                             (GHC.Prim.minusFloat#
+                                (GHC.Prim.timesFloat# dt72 dt82)
+                                (GHC.Prim.timesFloat# dt76 dt78))))
+                       (GHC.Prim.timesFloat#
+                          dt70
+                          (GHC.Prim.minusFloat#
+                             (GHC.Prim.timesFloat# dt72 dt80)
+                             (GHC.Prim.timesFloat# dt74 dt78)))))
+                 (GHC.Prim.timesFloat#
+                    (GHC.Prim.timesFloat# -1.0# dt9)
+                    (GHC.Prim.plusFloat#
+                       (GHC.Prim.minusFloat#
+                          (GHC.Prim.timesFloat#
+                             dt84
+                             (GHC.Prim.minusFloat#
+                                (GHC.Prim.timesFloat# dt92 dt100)
+                                (GHC.Prim.timesFloat# dt94 dt98)))
+                          (GHC.Prim.timesFloat#
+                             dt86
+                             (GHC.Prim.minusFloat#
+                                (GHC.Prim.timesFloat# dt90 dt100)
+                                (GHC.Prim.timesFloat# dt94 dt96))))
+                       (GHC.Prim.timesFloat#
+                          dt88
+                          (GHC.Prim.minusFloat#
+                             (GHC.Prim.timesFloat# dt90 dt98)
+                             (GHC.Prim.timesFloat# dt92 dt96))))))))
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+
+
+------ Local rules for imported ids --------
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'True, 'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'True, 'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'True, 'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'True, 'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk124
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'True, 'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk123
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk122
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk121
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk120
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk119
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk118
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'True, 'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'True, 'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'True, 'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk117
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'True, 'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk116
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk115
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk114
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk113
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk112
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk111
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk110
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True, 'False, 'False,
+                                                                      'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk109
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True, 'False,
+                                                                      'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk108
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True,
+                                                                      'False, 'False, 'False,
+                                                                      'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk107
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk106
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk105
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk104
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk103
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk102
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk101
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk100
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'False, 'False,
+                                                                      'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                       'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                       'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                       'False, 'False, 'False,
+                                                                       'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                       'False, 'False, 'False,
+                                                                       'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                       'False, 'False, 'False,
+                                                                       'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                       'False, 'False, 'False,
+                                                                       'False, 'False, 'False,
+                                                                       'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                       'False, 'False, 'False,
+                                                                       'False, 'False, 'False,
+                                                                       'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                       'False, 'False, 'False,
+                                                                       'False, 'False, 'False,
+                                                                       'False, 'False, 'False,
+                                                                       'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                       'False, 'False, 'False,
+                                                                       'False, 'False, 'False,
+                                                                       'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                       'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.Minor $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Minor.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+
+ tests/CoreDump/Matrix/Minor.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.Minor where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+-- FIXME: Generates terrible Core.
+minor_ :: Matrix 5 5 Float -> Float
+minor_ = minor @0 @0
+ tests/CoreDump/Matrix/MinorMatrix.dump-simpl.ghc821.golden view
@@ -0,0 +1,3068 @@+
+==================== Tidy Core ====================
+2017-09-12 21:51:43.5583543 UTC
+
+Result size of Tidy Core
+  = {terms: 1,239, types: 3,563, coercions: 84,178, joins: 0/2}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.MinorMatrix.$trModule2
+  = "CoreDump.Matrix.MinorMatrix"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.MinorMatrix.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.MinorMatrix.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.MinorMatrix.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.MinorMatrix.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.MinorMatrix.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$trModule :: GHC.Types.Module
+CoreDump.Matrix.MinorMatrix.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.MinorMatrix.$trModule3
+      CoreDump.Matrix.MinorMatrix.$trModule1
+
+-- RHS size: {terms: 8, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 -> GHC.Types.[] @ e
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'True, 'False, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'True, 'False, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'True, 'False, 'False, 'False, 'False])
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'True, 'False, 'False])
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'True, 'False])
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 10, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 -> GHC.Types.: @ e x (GHC.Types.[] @ e)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 61, coercions: 52, joins: 0/0}
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  :: (Data.Tensor.Static.IsTensor '[4, 4] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False, 'False, 'False, 'False, 'True])
+CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  = (TensorInstances.$fIsTensor:Float6,
+     CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+     `cast` <Co:52>)
+
+-- RHS size: {terms: 80, types: 460, coercions: 83,691, joins: 0/2}
+CoreDump.Matrix.MinorMatrix.$sminorMatrix
+  :: Matrix 4 4 Float
+     -> Matrix (4 GHC.TypeNats.- 1) (4 GHC.TypeNats.- 1) Float
+CoreDump.Matrix.MinorMatrix.$sminorMatrix
+  = \ (m :: Matrix 4 4 Float) ->
+      let {
+        $wf
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+               x1 =>
+             Float
+        $wf
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index1 x1)]
+                                    (Data.Tensor.Static.SliceEndIndex''
+                                       '[Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1),
+                                         Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index1 x1)]
+                                       '[1, 1]
+                                       '[4, 4]
+                                       ((Data.Matrix.Static.MinorMatrixNewIndex
+                                           0 (Data.Matrix.Static.Index0 x1)
+                                         GHC.TypeNats.+ 1)
+                                        GHC.TypeNats.<=? 4))
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 4] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:141>)))
+                      `cast` <Co:12>)
+              of cobox2
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 4]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    '[Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index0 x1),
+                                      Data.Matrix.Static.MinorMatrixNewIndex
+                                        0 (Data.Matrix.Static.Index1 x1)]
+                                    '[1, 1]
+                                    '[4, 4]))
+                            (w `cast` <Co:18>)))
+                      `cast` <Co:12>)
+              of cobox3
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 4] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              '[Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index0 x1),
+                                Data.Matrix.Static.MinorMatrixNewIndex
+                                  0 (Data.Matrix.Static.Index1 x1)]
+                              '[1, 1]
+                              '[4, 4]))
+                      (w `cast` <Co:18>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 4])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 4] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 4] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               '[Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index0 x1),
+                                 Data.Matrix.Static.MinorMatrixNewIndex
+                                   0 (Data.Matrix.Static.Index1 x1)]
+                               '[1, 1]
+                               '[4, 4]))
+                       (w `cast` <Co:18>))
+                    `cast` <Co:32>)
+                     @ Float (Data.Tensor.Static.toList @ '[4, 4] @ Float $dIsTensor1 m)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x ds1 -> x
+              }
+              }
+              }
+              } } in
+      case $wf
+             @ '[0, 0]
+             (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:9265>)
+      of
+      { GHC.Types.F# dt1 ->
+      case $wf
+             @ '[0, 1]
+             (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:9267>)
+      of
+      { GHC.Types.F# dt3 ->
+      case $wf
+             @ '[0, 2]
+             (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:9267>)
+      of
+      { GHC.Types.F# dt5 ->
+      case $wf
+             @ '[1, 0]
+             (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:9267>)
+      of
+      { GHC.Types.F# dt7 ->
+      case $wf
+             @ '[1, 1]
+             (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:9269>)
+      of
+      { GHC.Types.F# dt9 ->
+      case $wf
+             @ '[1, 2]
+             (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:9269>)
+      of
+      { GHC.Types.F# dt11 ->
+      case $wf
+             @ '[2, 0]
+             (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:9267>)
+      of
+      { GHC.Types.F# dt13 ->
+      case $wf
+             @ '[2, 1]
+             (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:9269>)
+      of
+      { GHC.Types.F# dt15 ->
+      case $wf
+             @ '[2, 2]
+             (CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:9269>)
+      of
+      { GHC.Types.F# dt17 ->
+      (TensorInstances.Tensor'3'3'Float
+         dt1 dt3 dt5 dt7 dt9 dt11 dt13 dt15 dt17)
+      `cast` <Co:19>
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+
+-- RHS size: {terms: 1, types: 0, coercions: 19, joins: 0/0}
+minorMatrix_ :: Matrix 4 4 Float -> Matrix 3 3 Float
+minorMatrix_
+  = CoreDump.Matrix.MinorMatrix.$sminorMatrix `cast` <Co:19>
+
+
+------ Local rules for imported ids --------
+"SPEC/CoreDump.Matrix.MinorMatrix minorMatrix @ 0 @ 0 @ 4 @ Float"
+    forall ($d(%,%)
+              :: Data.Tensor.Static.Generate
+                   '[4 GHC.TypeNats.- 1, 4 GHC.TypeNats.- 1]
+                   Float
+                   ([GHC.Types.Nat] Data.Singletons.~> Constraint)
+                   (Data.Matrix.Static.MinorMatrixGoSym4 0 0 4 Float)).
+      minorMatrix @ 0 @ 0 @ 4 @ Float $d(%,%)
+      = CoreDump.Matrix.MinorMatrix.$sminorMatrix
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk77
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk86
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk85
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk84
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk83
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk82
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk81
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk80
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk79
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk78
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk93
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk92
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk91
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk90
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk89
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk88
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk87
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk99
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk98
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk97
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk96
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk95
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk94
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'False, 'False,
+                                                                            'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False,
+                                                                             'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False, 'False,
+                                                                             'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False, 'False,
+                                                                             'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.MinorMatrix $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.MinorMatrix.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+
+ tests/CoreDump/Matrix/MinorMatrix.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.MinorMatrix where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+-- FIXME: Generates terrible Core.
+minorMatrix_ :: Matrix 4 4 Float -> Matrix 3 3 Float
+minorMatrix_ = minorMatrix @0 @0
+ tests/CoreDump/Matrix/MultMatMat.dump-simpl.ghc821.golden view
@@ -0,0 +1,163 @@+
+==================== Tidy Core ====================
+2017-09-08 01:37:06.5543801 UTC
+
+Result size of Tidy Core
+  = {terms: 266, types: 110, coercions: 28, joins: 0/0}
+
+-- RHS size: {terms: 249, types: 54, coercions: 12, joins: 0/0}
+CoreDump.Matrix.MultMatMat.multMatMat_1
+  :: Data.Tensor.Static.Tensor '[4, 4] Float
+     -> Data.Tensor.Static.Tensor '[4, 4] Float
+     -> Data.Tensor.Static.Tensor (MatrixMultDims '[4, 4] '[4, 4]) Float
+CoreDump.Matrix.MultMatMat.multMatMat_1
+  = \ (m0 :: Data.Tensor.Static.Tensor '[4, 4] Float)
+      (m1 :: Data.Tensor.Static.Tensor '[4, 4] Float) ->
+      case m0 `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 ->
+      case m1 `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt16 dt17 dt18 dt19 dt20 dt21
+                                         dt22 dt23 dt24 dt25 dt26 dt27 dt28 dt29 dt30 dt31 ->
+      (TensorInstances.Tensor'4'4'Float
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt dt16)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt1 dt20)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt2 dt24) (GHC.Prim.timesFloat# dt3 dt28))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt dt17)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt1 dt21)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt2 dt25) (GHC.Prim.timesFloat# dt3 dt29))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt dt18)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt1 dt22)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt2 dt26) (GHC.Prim.timesFloat# dt3 dt30))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt dt19)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt1 dt23)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt2 dt27) (GHC.Prim.timesFloat# dt3 dt31))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt4 dt16)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt5 dt20)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt6 dt24) (GHC.Prim.timesFloat# dt7 dt28))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt4 dt17)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt5 dt21)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt6 dt25) (GHC.Prim.timesFloat# dt7 dt29))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt4 dt18)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt5 dt22)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt6 dt26) (GHC.Prim.timesFloat# dt7 dt30))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt4 dt19)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt5 dt23)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt6 dt27) (GHC.Prim.timesFloat# dt7 dt31))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt8 dt16)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt9 dt20)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt10 dt24)
+                  (GHC.Prim.timesFloat# dt11 dt28))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt8 dt17)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt9 dt21)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt10 dt25)
+                  (GHC.Prim.timesFloat# dt11 dt29))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt8 dt18)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt9 dt22)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt10 dt26)
+                  (GHC.Prim.timesFloat# dt11 dt30))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt8 dt19)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt9 dt23)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt10 dt27)
+                  (GHC.Prim.timesFloat# dt11 dt31))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt12 dt16)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt13 dt20)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt14 dt24)
+                  (GHC.Prim.timesFloat# dt15 dt28))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt12 dt17)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt13 dt21)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt14 dt25)
+                  (GHC.Prim.timesFloat# dt15 dt29))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt12 dt18)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt13 dt22)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt14 dt26)
+                  (GHC.Prim.timesFloat# dt15 dt30))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt12 dt19)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt13 dt23)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt14 dt27)
+                  (GHC.Prim.timesFloat# dt15 dt31)))))
+      `cast` <Co:10>
+      }
+      }
+
+-- RHS size: {terms: 1, types: 0, coercions: 16, joins: 0/0}
+multMatMat_
+  :: Matrix 4 4 Float -> Matrix 4 4 Float -> Matrix 4 4 Float
+multMatMat_
+  = CoreDump.Matrix.MultMatMat.multMatMat_1 `cast` <Co:16>
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatMat.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.MultMatMat.$trModule2
+  = "CoreDump.Matrix.MultMatMat"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatMat.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.MultMatMat.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.MultMatMat.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatMat.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.MultMatMat.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatMat.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.MultMatMat.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.MultMatMat.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatMat.$trModule :: GHC.Types.Module
+CoreDump.Matrix.MultMatMat.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.MultMatMat.$trModule3
+      CoreDump.Matrix.MultMatMat.$trModule1
+
+
+ tests/CoreDump/Matrix/MultMatMat.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.MultMatMat where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+multMatMat_ :: Matrix 4 4 Float -> Matrix 4 4 Float -> Matrix 4 4 Float
+multMatMat_ = mult
+ tests/CoreDump/Matrix/MultMatMat5.dump-simpl.ghc821.golden view
@@ -0,0 +1,663 @@+
+==================== Tidy Core ====================
+2017-09-08 01:37:01.406746 UTC
+
+Result size of Tidy Core
+  = {terms: 1,044, types: 182, coercions: 7, joins: 0/48}
+
+-- RHS size: {terms: 1,029, types: 153, coercions: 7, joins: 0/48}
+multMatMat5_
+  :: Matrix 4 4 Float
+     -> Matrix 4 4 Float
+     -> Matrix 4 4 Float
+     -> Matrix 4 4 Float
+     -> Matrix 4 4 Float
+     -> Matrix 4 4 Float
+multMatMat5_
+  = \ (a :: Matrix 4 4 Float)
+      (b :: Matrix 4 4 Float)
+      (c :: Matrix 4 4 Float)
+      (d :: Matrix 4 4 Float)
+      (e :: Matrix 4 4 Float) ->
+      case a `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 ->
+      case b `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt16 dt17 dt18 dt19 dt20 dt21
+                                         dt22 dt23 dt24 dt25 dt26 dt27 dt28 dt29 dt30 dt31 ->
+      case c `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt32 dt33 dt34 dt35 dt36 dt37
+                                         dt38 dt39 dt40 dt41 dt42 dt43 dt44 dt45 dt46 dt47 ->
+      case d `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt48 dt49 dt50 dt51 dt52 dt53
+                                         dt54 dt55 dt56 dt57 dt58 dt59 dt60 dt61 dt62 dt63 ->
+      case e `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt64 dt65 dt66 dt67 dt68 dt69
+                                         dt70 dt71 dt72 dt73 dt74 dt75 dt76 dt77 dt78 dt79 ->
+      let {
+        dt80 :: GHC.Prim.Float#
+        dt80
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt dt16)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt1 dt20)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt2 dt24)
+                    (GHC.Prim.timesFloat# dt3 dt28))) } in
+      let {
+        dt81 :: GHC.Prim.Float#
+        dt81
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt dt17)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt1 dt21)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt2 dt25)
+                    (GHC.Prim.timesFloat# dt3 dt29))) } in
+      let {
+        dt82 :: GHC.Prim.Float#
+        dt82
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt dt18)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt1 dt22)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt2 dt26)
+                    (GHC.Prim.timesFloat# dt3 dt30))) } in
+      let {
+        dt83 :: GHC.Prim.Float#
+        dt83
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt dt19)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt1 dt23)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt2 dt27)
+                    (GHC.Prim.timesFloat# dt3 dt31))) } in
+      let {
+        dt84 :: GHC.Prim.Float#
+        dt84
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt80 dt32)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt81 dt36)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt82 dt40)
+                    (GHC.Prim.timesFloat# dt83 dt44))) } in
+      let {
+        dt85 :: GHC.Prim.Float#
+        dt85
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt80 dt33)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt81 dt37)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt82 dt41)
+                    (GHC.Prim.timesFloat# dt83 dt45))) } in
+      let {
+        dt86 :: GHC.Prim.Float#
+        dt86
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt80 dt34)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt81 dt38)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt82 dt42)
+                    (GHC.Prim.timesFloat# dt83 dt46))) } in
+      let {
+        dt87 :: GHC.Prim.Float#
+        dt87
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt80 dt35)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt81 dt39)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt82 dt43)
+                    (GHC.Prim.timesFloat# dt83 dt47))) } in
+      let {
+        dt88 :: GHC.Prim.Float#
+        dt88
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt84 dt48)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt85 dt52)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt86 dt56)
+                    (GHC.Prim.timesFloat# dt87 dt60))) } in
+      let {
+        dt89 :: GHC.Prim.Float#
+        dt89
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt84 dt49)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt85 dt53)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt86 dt57)
+                    (GHC.Prim.timesFloat# dt87 dt61))) } in
+      let {
+        dt90 :: GHC.Prim.Float#
+        dt90
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt84 dt50)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt85 dt54)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt86 dt58)
+                    (GHC.Prim.timesFloat# dt87 dt62))) } in
+      let {
+        dt91 :: GHC.Prim.Float#
+        dt91
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt84 dt51)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt85 dt55)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt86 dt59)
+                    (GHC.Prim.timesFloat# dt87 dt63))) } in
+      let {
+        dt92 :: GHC.Prim.Float#
+        dt92
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt4 dt16)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt5 dt20)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt6 dt24)
+                    (GHC.Prim.timesFloat# dt7 dt28))) } in
+      let {
+        dt93 :: GHC.Prim.Float#
+        dt93
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt4 dt17)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt5 dt21)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt6 dt25)
+                    (GHC.Prim.timesFloat# dt7 dt29))) } in
+      let {
+        dt94 :: GHC.Prim.Float#
+        dt94
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt4 dt18)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt5 dt22)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt6 dt26)
+                    (GHC.Prim.timesFloat# dt7 dt30))) } in
+      let {
+        dt95 :: GHC.Prim.Float#
+        dt95
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt4 dt19)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt5 dt23)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt6 dt27)
+                    (GHC.Prim.timesFloat# dt7 dt31))) } in
+      let {
+        dt96 :: GHC.Prim.Float#
+        dt96
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt92 dt32)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt93 dt36)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt94 dt40)
+                    (GHC.Prim.timesFloat# dt95 dt44))) } in
+      let {
+        dt97 :: GHC.Prim.Float#
+        dt97
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt92 dt33)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt93 dt37)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt94 dt41)
+                    (GHC.Prim.timesFloat# dt95 dt45))) } in
+      let {
+        dt98 :: GHC.Prim.Float#
+        dt98
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt92 dt34)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt93 dt38)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt94 dt42)
+                    (GHC.Prim.timesFloat# dt95 dt46))) } in
+      let {
+        dt99 :: GHC.Prim.Float#
+        dt99
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt92 dt35)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt93 dt39)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt94 dt43)
+                    (GHC.Prim.timesFloat# dt95 dt47))) } in
+      let {
+        dt100 :: GHC.Prim.Float#
+        dt100
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt96 dt48)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt97 dt52)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt98 dt56)
+                    (GHC.Prim.timesFloat# dt99 dt60))) } in
+      let {
+        dt101 :: GHC.Prim.Float#
+        dt101
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt96 dt49)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt97 dt53)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt98 dt57)
+                    (GHC.Prim.timesFloat# dt99 dt61))) } in
+      let {
+        dt102 :: GHC.Prim.Float#
+        dt102
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt96 dt50)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt97 dt54)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt98 dt58)
+                    (GHC.Prim.timesFloat# dt99 dt62))) } in
+      let {
+        dt103 :: GHC.Prim.Float#
+        dt103
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt96 dt51)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt97 dt55)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt98 dt59)
+                    (GHC.Prim.timesFloat# dt99 dt63))) } in
+      let {
+        dt104 :: GHC.Prim.Float#
+        dt104
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt8 dt16)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt9 dt20)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt10 dt24)
+                    (GHC.Prim.timesFloat# dt11 dt28))) } in
+      let {
+        dt105 :: GHC.Prim.Float#
+        dt105
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt8 dt17)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt9 dt21)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt10 dt25)
+                    (GHC.Prim.timesFloat# dt11 dt29))) } in
+      let {
+        dt106 :: GHC.Prim.Float#
+        dt106
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt8 dt18)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt9 dt22)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt10 dt26)
+                    (GHC.Prim.timesFloat# dt11 dt30))) } in
+      let {
+        dt107 :: GHC.Prim.Float#
+        dt107
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt8 dt19)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt9 dt23)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt10 dt27)
+                    (GHC.Prim.timesFloat# dt11 dt31))) } in
+      let {
+        dt108 :: GHC.Prim.Float#
+        dt108
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt104 dt32)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt105 dt36)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt106 dt40)
+                    (GHC.Prim.timesFloat# dt107 dt44))) } in
+      let {
+        dt109 :: GHC.Prim.Float#
+        dt109
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt104 dt33)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt105 dt37)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt106 dt41)
+                    (GHC.Prim.timesFloat# dt107 dt45))) } in
+      let {
+        dt110 :: GHC.Prim.Float#
+        dt110
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt104 dt34)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt105 dt38)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt106 dt42)
+                    (GHC.Prim.timesFloat# dt107 dt46))) } in
+      let {
+        dt111 :: GHC.Prim.Float#
+        dt111
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt104 dt35)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt105 dt39)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt106 dt43)
+                    (GHC.Prim.timesFloat# dt107 dt47))) } in
+      let {
+        dt112 :: GHC.Prim.Float#
+        dt112
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt108 dt48)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt109 dt52)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt110 dt56)
+                    (GHC.Prim.timesFloat# dt111 dt60))) } in
+      let {
+        dt113 :: GHC.Prim.Float#
+        dt113
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt108 dt49)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt109 dt53)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt110 dt57)
+                    (GHC.Prim.timesFloat# dt111 dt61))) } in
+      let {
+        dt114 :: GHC.Prim.Float#
+        dt114
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt108 dt50)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt109 dt54)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt110 dt58)
+                    (GHC.Prim.timesFloat# dt111 dt62))) } in
+      let {
+        dt115 :: GHC.Prim.Float#
+        dt115
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt108 dt51)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt109 dt55)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt110 dt59)
+                    (GHC.Prim.timesFloat# dt111 dt63))) } in
+      let {
+        dt116 :: GHC.Prim.Float#
+        dt116
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt12 dt16)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt13 dt20)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt14 dt24)
+                    (GHC.Prim.timesFloat# dt15 dt28))) } in
+      let {
+        dt117 :: GHC.Prim.Float#
+        dt117
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt12 dt17)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt13 dt21)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt14 dt25)
+                    (GHC.Prim.timesFloat# dt15 dt29))) } in
+      let {
+        dt118 :: GHC.Prim.Float#
+        dt118
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt12 dt18)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt13 dt22)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt14 dt26)
+                    (GHC.Prim.timesFloat# dt15 dt30))) } in
+      let {
+        dt119 :: GHC.Prim.Float#
+        dt119
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt12 dt19)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt13 dt23)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt14 dt27)
+                    (GHC.Prim.timesFloat# dt15 dt31))) } in
+      let {
+        dt120 :: GHC.Prim.Float#
+        dt120
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt116 dt32)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt117 dt36)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt118 dt40)
+                    (GHC.Prim.timesFloat# dt119 dt44))) } in
+      let {
+        dt121 :: GHC.Prim.Float#
+        dt121
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt116 dt33)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt117 dt37)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt118 dt41)
+                    (GHC.Prim.timesFloat# dt119 dt45))) } in
+      let {
+        dt122 :: GHC.Prim.Float#
+        dt122
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt116 dt34)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt117 dt38)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt118 dt42)
+                    (GHC.Prim.timesFloat# dt119 dt46))) } in
+      let {
+        dt123 :: GHC.Prim.Float#
+        dt123
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt116 dt35)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt117 dt39)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt118 dt43)
+                    (GHC.Prim.timesFloat# dt119 dt47))) } in
+      let {
+        dt124 :: GHC.Prim.Float#
+        dt124
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt120 dt48)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt121 dt52)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt122 dt56)
+                    (GHC.Prim.timesFloat# dt123 dt60))) } in
+      let {
+        dt125 :: GHC.Prim.Float#
+        dt125
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt120 dt49)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt121 dt53)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt122 dt57)
+                    (GHC.Prim.timesFloat# dt123 dt61))) } in
+      let {
+        dt126 :: GHC.Prim.Float#
+        dt126
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt120 dt50)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt121 dt54)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt122 dt58)
+                    (GHC.Prim.timesFloat# dt123 dt62))) } in
+      let {
+        dt127 :: GHC.Prim.Float#
+        dt127
+          = GHC.Prim.plusFloat#
+              (GHC.Prim.timesFloat# dt120 dt51)
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt121 dt55)
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt122 dt59)
+                    (GHC.Prim.timesFloat# dt123 dt63))) } in
+      (TensorInstances.Tensor'4'4'Float
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt88 dt64)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt89 dt68)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt90 dt72)
+                  (GHC.Prim.timesFloat# dt91 dt76))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt88 dt65)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt89 dt69)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt90 dt73)
+                  (GHC.Prim.timesFloat# dt91 dt77))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt88 dt66)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt89 dt70)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt90 dt74)
+                  (GHC.Prim.timesFloat# dt91 dt78))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt88 dt67)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt89 dt71)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt90 dt75)
+                  (GHC.Prim.timesFloat# dt91 dt79))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt100 dt64)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt101 dt68)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt102 dt72)
+                  (GHC.Prim.timesFloat# dt103 dt76))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt100 dt65)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt101 dt69)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt102 dt73)
+                  (GHC.Prim.timesFloat# dt103 dt77))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt100 dt66)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt101 dt70)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt102 dt74)
+                  (GHC.Prim.timesFloat# dt103 dt78))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt100 dt67)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt101 dt71)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt102 dt75)
+                  (GHC.Prim.timesFloat# dt103 dt79))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt112 dt64)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt113 dt68)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt114 dt72)
+                  (GHC.Prim.timesFloat# dt115 dt76))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt112 dt65)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt113 dt69)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt114 dt73)
+                  (GHC.Prim.timesFloat# dt115 dt77))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt112 dt66)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt113 dt70)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt114 dt74)
+                  (GHC.Prim.timesFloat# dt115 dt78))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt112 dt67)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt113 dt71)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt114 dt75)
+                  (GHC.Prim.timesFloat# dt115 dt79))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt124 dt64)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt125 dt68)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt126 dt72)
+                  (GHC.Prim.timesFloat# dt127 dt76))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt124 dt65)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt125 dt69)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt126 dt73)
+                  (GHC.Prim.timesFloat# dt127 dt77))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt124 dt66)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt125 dt70)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt126 dt74)
+                  (GHC.Prim.timesFloat# dt127 dt78))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt124 dt67)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt125 dt71)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt126 dt75)
+                  (GHC.Prim.timesFloat# dt127 dt79)))))
+      `cast` <Co:2>
+      }
+      }
+      }
+      }
+      }
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatMat5.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.MultMatMat5.$trModule2
+  = "CoreDump.Matrix.MultMatMat5"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatMat5.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.MultMatMat5.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.MultMatMat5.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatMat5.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.MultMatMat5.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatMat5.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.MultMatMat5.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.MultMatMat5.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatMat5.$trModule :: GHC.Types.Module
+CoreDump.Matrix.MultMatMat5.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.MultMatMat5.$trModule3
+      CoreDump.Matrix.MultMatMat5.$trModule1
+
+
+ tests/CoreDump/Matrix/MultMatMat5.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.MultMatMat5 where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+multMatMat5_ :: Matrix 4 4 Float -> Matrix 4 4 Float -> Matrix 4 4 Float -> Matrix 4 4 Float -> Matrix 4 4 Float -> Matrix 4 4 Float
+multMatMat5_ a b c d e = a `mult` b `mult` c `mult` d `mult` e
+ tests/CoreDump/Matrix/MultMatVec.dump-simpl.ghc821.golden view
@@ -0,0 +1,83 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:44.9537 UTC
+
+Result size of Tidy Core
+  = {terms: 86, types: 87, coercions: 25, joins: 0/0}
+
+-- RHS size: {terms: 69, types: 39, coercions: 11, joins: 0/0}
+CoreDump.Matrix.MultMatVec.multMatVec_1
+  :: Data.Tensor.Static.Tensor '[4, 4] Float
+     -> Data.Tensor.Static.Tensor '[4] Float
+     -> Data.Tensor.Static.Tensor (MatrixMultDims '[4, 4] '[4]) Float
+CoreDump.Matrix.MultMatVec.multMatVec_1
+  = \ (m1 :: Data.Tensor.Static.Tensor '[4, 4] Float)
+      (v :: Data.Tensor.Static.Tensor '[4] Float) ->
+      case m1 `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 ->
+      case v `cast` <Co:1> of
+      { TensorInstances.Tensor'4'Float dt16 dt17 dt18 dt19 ->
+      (TensorInstances.Tensor'4'Float
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt dt16)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt1 dt17)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt2 dt18) (GHC.Prim.timesFloat# dt3 dt19))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt4 dt16)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt5 dt17)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt6 dt18) (GHC.Prim.timesFloat# dt7 dt19))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt8 dt16)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt9 dt17)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt10 dt18)
+                  (GHC.Prim.timesFloat# dt11 dt19))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt12 dt16)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt13 dt17)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt14 dt18)
+                  (GHC.Prim.timesFloat# dt15 dt19)))))
+      `cast` <Co:9>
+      }
+      }
+
+-- RHS size: {terms: 1, types: 0, coercions: 14, joins: 0/0}
+multMatVec_ :: Matrix 4 4 Float -> Vector 4 Float -> Vector 4 Float
+multMatVec_
+  = CoreDump.Matrix.MultMatVec.multMatVec_1 `cast` <Co:14>
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatVec.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.MultMatVec.$trModule2
+  = "CoreDump.Matrix.MultMatVec"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatVec.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.MultMatVec.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.MultMatVec.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatVec.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.MultMatVec.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatVec.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.MultMatVec.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.MultMatVec.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultMatVec.$trModule :: GHC.Types.Module
+CoreDump.Matrix.MultMatVec.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.MultMatVec.$trModule3
+      CoreDump.Matrix.MultMatVec.$trModule1
+
+
+ tests/CoreDump/Matrix/MultMatVec.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.MultMatVec where
+
+import Data.Matrix.Static
+import Data.Vector.Static
+import TensorInstances ()
+
+multMatVec_ :: Matrix 4 4 Float -> Vector 4 Float -> Vector 4 Float
+multMatVec_ = mult
+ tests/CoreDump/Matrix/MultVecMat.dump-simpl.ghc821.golden view
@@ -0,0 +1,81 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:44.0532953 UTC
+
+Result size of Tidy Core
+  = {terms: 86, types: 87, coercions: 25, joins: 0/0}
+
+-- RHS size: {terms: 69, types: 39, coercions: 11, joins: 0/0}
+CoreDump.Matrix.MultVecMat.multVecMat_1
+  :: Data.Tensor.Static.Tensor '[4] Float
+     -> Data.Tensor.Static.Tensor '[4, 4] Float
+     -> Data.Tensor.Static.Tensor (MatrixMultDims '[4] '[4, 4]) Float
+CoreDump.Matrix.MultVecMat.multVecMat_1
+  = \ (v :: Data.Tensor.Static.Tensor '[4] Float)
+      (m1 :: Data.Tensor.Static.Tensor '[4, 4] Float) ->
+      case v `cast` <Co:1> of
+      { TensorInstances.Tensor'4'Float dt dt1 dt2 dt3 ->
+      case m1 `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt4 dt5 dt6 dt7 dt8 dt9 dt10
+                                         dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19 ->
+      (TensorInstances.Tensor'4'Float
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt dt4)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt1 dt8)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt2 dt12) (GHC.Prim.timesFloat# dt3 dt16))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt dt5)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt1 dt9)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt2 dt13) (GHC.Prim.timesFloat# dt3 dt17))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt dt6)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt1 dt10)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt2 dt14) (GHC.Prim.timesFloat# dt3 dt18))))
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.timesFloat# dt dt7)
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.timesFloat# dt1 dt11)
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt2 dt15) (GHC.Prim.timesFloat# dt3 dt19)))))
+      `cast` <Co:9>
+      }
+      }
+
+-- RHS size: {terms: 1, types: 0, coercions: 14, joins: 0/0}
+multVecMat_ :: Vector 4 Float -> Matrix 4 4 Float -> Vector 4 Float
+multVecMat_
+  = CoreDump.Matrix.MultVecMat.multVecMat_1 `cast` <Co:14>
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultVecMat.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.MultVecMat.$trModule2
+  = "CoreDump.Matrix.MultVecMat"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultVecMat.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.MultVecMat.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.MultVecMat.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultVecMat.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.MultVecMat.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultVecMat.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.MultVecMat.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.MultVecMat.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.MultVecMat.$trModule :: GHC.Types.Module
+CoreDump.Matrix.MultVecMat.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.MultVecMat.$trModule3
+      CoreDump.Matrix.MultVecMat.$trModule1
+
+
+ tests/CoreDump/Matrix/MultVecMat.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.MultVecMat where
+
+import Data.Matrix.Static
+import Data.Vector.Static
+import TensorInstances ()
+
+multVecMat_ :: Vector 4 Float -> Matrix 4 4 Float -> Vector 4 Float
+multVecMat_ = mult
+ tests/CoreDump/Matrix/RowOver.dump-simpl.ghc821.golden view
@@ -0,0 +1,54 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:43.1954877 UTC
+
+Result size of Tidy Core
+  = {terms: 40, types: 46, coercions: 6, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowOver.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.RowOver.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowOver.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.RowOver.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.RowOver.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowOver.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.RowOver.$trModule2 = "CoreDump.Matrix.RowOver"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowOver.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.RowOver.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.RowOver.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowOver.$trModule :: GHC.Types.Module
+CoreDump.Matrix.RowOver.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.RowOver.$trModule3
+      CoreDump.Matrix.RowOver.$trModule1
+
+-- RHS size: {terms: 25, types: 27, coercions: 6, joins: 0/0}
+rowOver_
+  :: (Vector 3 Float -> Vector 3 Float)
+     -> Matrix 4 3 Float -> Matrix 4 3 Float
+rowOver_
+  = \ (f :: Vector 3 Float -> Vector 3 Float)
+      (eta :: Matrix 4 3 Float) ->
+      case eta `cast` <Co:1> of
+      { TensorInstances.Tensor'4'3'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 ->
+      case (f ((TensorInstances.Tensor'3'Float dt6 dt7 dt8)
+               `cast` <Co:2>))
+           `cast` <Co:1>
+      of
+      { TensorInstances.Tensor'3'Float dt16 dt17 dt18 ->
+      (TensorInstances.Tensor'4'3'Float
+         dt dt1 dt2 dt3 dt4 dt5 dt16 dt17 dt18 dt9 dt10 dt11)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Matrix/RowOver.hs view
@@ -0,0 +1,12 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.RowOver where
+
+import Control.Lens
+import Data.Matrix.Static
+import Data.Vector.Static
+import TensorInstances ()
+
+rowOver_ :: (Vector 3 Float -> Vector 3 Float) -> Matrix 4 3 Float -> Matrix 4 3 Float
+rowOver_ f = over (row @2) f
+ tests/CoreDump/Matrix/RowSet.dump-simpl.ghc821.golden view
@@ -0,0 +1,62 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:42.830885 UTC
+
+Result size of Tidy Core
+  = {terms: 40, types: 45, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowSet.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.RowSet.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowSet.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.RowSet.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.RowSet.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowSet.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.RowSet.$trModule2 = "CoreDump.Matrix.RowSet"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowSet.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.RowSet.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.RowSet.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowSet.$trModule :: GHC.Types.Module
+CoreDump.Matrix.RowSet.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.RowSet.$trModule3 CoreDump.Matrix.RowSet.$trModule1
+
+-- RHS size: {terms: 25, types: 29, coercions: 4, joins: 0/0}
+rowSet_ :: Vector 4 Float -> Matrix 4 4 Float -> Matrix 4 4 Float
+rowSet_
+  = \ (v :: Vector 4 Float) (eta :: Matrix 4 4 Float) ->
+      case eta `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 ->
+      case v `cast` <Co:1> of
+      { TensorInstances.Tensor'4'Float dt16 dt17 dt18 dt19 ->
+      (TensorInstances.Tensor'4'4'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt16
+         dt17
+         dt18
+         dt19
+         dt8
+         dt9
+         dt10
+         dt11
+         dt12
+         dt13
+         dt14
+         dt15)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Matrix/RowSet.hs view
@@ -0,0 +1,12 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.RowSet where
+
+import Control.Lens
+import Data.Matrix.Static
+import Data.Vector.Static
+import TensorInstances ()
+
+rowSet_ :: Vector 4 Float -> Matrix 4 4 Float -> Matrix 4 4 Float
+rowSet_ v = set (row @1) v
+ tests/CoreDump/Matrix/RowView.dump-simpl.ghc821.golden view
@@ -0,0 +1,43 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:42.4524841 UTC
+
+Result size of Tidy Core
+  = {terms: 24, types: 39, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowView.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.RowView.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowView.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.RowView.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.RowView.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowView.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.RowView.$trModule2 = "CoreDump.Matrix.RowView"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowView.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.RowView.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.RowView.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.RowView.$trModule :: GHC.Types.Module
+CoreDump.Matrix.RowView.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.RowView.$trModule3
+      CoreDump.Matrix.RowView.$trModule1
+
+-- RHS size: {terms: 9, types: 27, coercions: 3, joins: 0/0}
+rowView_ :: Matrix 4 4 Float -> Vector 4 Float
+rowView_
+  = \ (s1 :: Data.Tensor.Static.Tensor '[4, 4] Float) ->
+      case s1 `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 ->
+      (TensorInstances.Tensor'4'Float dt dt1 dt2 dt3) `cast` <Co:2>
+      }
+
+
+ tests/CoreDump/Matrix/RowView.hs view
@@ -0,0 +1,12 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.RowView where
+
+import Control.Lens
+import Data.Matrix.Static
+import Data.Vector.Static
+import TensorInstances ()
+
+rowView_ :: Matrix 4 4 Float -> Vector 4 Float
+rowView_ = view (row @0)
+ tests/CoreDump/Matrix/SetColElems.dump-simpl.ghc821.golden view
@@ -0,0 +1,89 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:42.1026797 UTC
+
+Result size of Tidy Core
+  = {terms: 70, types: 123, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.SetColElems.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.SetColElems.$trModule2
+  = "CoreDump.Matrix.SetColElems"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.SetColElems.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.SetColElems.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.SetColElems.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.SetColElems.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.SetColElems.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.SetColElems.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.SetColElems.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.SetColElems.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.SetColElems.$trModule :: GHC.Types.Module
+CoreDump.Matrix.SetColElems.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.SetColElems.$trModule3
+      CoreDump.Matrix.SetColElems.$trModule1
+
+-- RHS size: {terms: 55, types: 107, coercions: 3, joins: 0/0}
+setColElems_
+  :: Matrix 4 4 Float -> [Float] -> Maybe (Matrix 4 4 Float)
+setColElems_
+  = \ (t :: Data.Tensor.Static.Tensor '[4, 4] Float)
+      (xs :: [Float]) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 ->
+      case xs of {
+        [] -> GHC.Base.Nothing @ (Data.Tensor.Static.Tensor '[4, 4] Float);
+        : ipv2 ipv3 ->
+          case ipv3 of {
+            [] -> GHC.Base.Nothing @ (Data.Tensor.Static.Tensor '[4, 4] Float);
+            : ipv1 ipv5 ->
+              case ipv5 of {
+                [] -> GHC.Base.Nothing @ (Data.Tensor.Static.Tensor '[4, 4] Float);
+                : ipv6 ipv7 ->
+                  case ipv7 of {
+                    [] -> GHC.Base.Nothing @ (Data.Tensor.Static.Tensor '[4, 4] Float);
+                    : ipv8 ipv9 ->
+                      GHC.Base.Just
+                        @ (Data.Tensor.Static.Tensor '[4, 4] Float)
+                        (case ipv2 of { GHC.Types.F# dt17 ->
+                         case ipv1 of { GHC.Types.F# dt19 ->
+                         case ipv6 of { GHC.Types.F# dt21 ->
+                         case ipv8 of { GHC.Types.F# dt23 ->
+                         (TensorInstances.Tensor'4'4'Float
+                            dt
+                            dt17
+                            dt2
+                            dt3
+                            dt4
+                            dt19
+                            dt6
+                            dt7
+                            dt8
+                            dt21
+                            dt10
+                            dt11
+                            dt12
+                            dt23
+                            dt14
+                            dt15)
+                         `cast` <Co:2>
+                         }
+                         }
+                         }
+                         })
+                  }
+              }
+          }
+      }
+      }
+
+
+ tests/CoreDump/Matrix/SetColElems.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.SetColElems where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+setColElems_ :: Matrix 4 4 Float -> [Float] -> Maybe (Matrix 4 4 Float)
+setColElems_ = setColElems @1
+ tests/CoreDump/Matrix/SetRowElems.dump-simpl.ghc821.golden view
@@ -0,0 +1,89 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:41.5488765 UTC
+
+Result size of Tidy Core
+  = {terms: 70, types: 123, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.SetRowElems.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.SetRowElems.$trModule2
+  = "CoreDump.Matrix.SetRowElems"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.SetRowElems.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.SetRowElems.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.SetRowElems.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.SetRowElems.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.SetRowElems.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.SetRowElems.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.SetRowElems.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.SetRowElems.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.SetRowElems.$trModule :: GHC.Types.Module
+CoreDump.Matrix.SetRowElems.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.SetRowElems.$trModule3
+      CoreDump.Matrix.SetRowElems.$trModule1
+
+-- RHS size: {terms: 55, types: 107, coercions: 3, joins: 0/0}
+setRowElems_
+  :: Matrix 4 4 Float -> [Float] -> Maybe (Matrix 4 4 Float)
+setRowElems_
+  = \ (t :: Data.Tensor.Static.Tensor '[4, 4] Float)
+      (xs :: [Float]) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'4'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                         dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 ->
+      case xs of {
+        [] -> GHC.Base.Nothing @ (Data.Tensor.Static.Tensor '[4, 4] Float);
+        : ipv2 ipv3 ->
+          case ipv3 of {
+            [] -> GHC.Base.Nothing @ (Data.Tensor.Static.Tensor '[4, 4] Float);
+            : ipv1 ipv5 ->
+              case ipv5 of {
+                [] -> GHC.Base.Nothing @ (Data.Tensor.Static.Tensor '[4, 4] Float);
+                : ipv6 ipv7 ->
+                  case ipv7 of {
+                    [] -> GHC.Base.Nothing @ (Data.Tensor.Static.Tensor '[4, 4] Float);
+                    : ipv8 ipv9 ->
+                      GHC.Base.Just
+                        @ (Data.Tensor.Static.Tensor '[4, 4] Float)
+                        (case ipv2 of { GHC.Types.F# dt17 ->
+                         case ipv1 of { GHC.Types.F# dt19 ->
+                         case ipv6 of { GHC.Types.F# dt21 ->
+                         case ipv8 of { GHC.Types.F# dt23 ->
+                         (TensorInstances.Tensor'4'4'Float
+                            dt
+                            dt1
+                            dt2
+                            dt3
+                            dt17
+                            dt19
+                            dt21
+                            dt23
+                            dt8
+                            dt9
+                            dt10
+                            dt11
+                            dt12
+                            dt13
+                            dt14
+                            dt15)
+                         `cast` <Co:2>
+                         }
+                         }
+                         }
+                         })
+                  }
+              }
+          }
+      }
+      }
+
+
+ tests/CoreDump/Matrix/SetRowElems.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.SetRowElems where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+setRowElems_ :: Matrix 4 4 Float -> [Float] -> Maybe (Matrix 4 4 Float)
+setRowElems_ = setRowElems @1
+ tests/CoreDump/Matrix/Transpose.dump-simpl.ghc821.golden view
@@ -0,0 +1,2469 @@+
+==================== Tidy Core ====================
+2017-09-12 21:51:11.9565468 UTC
+
+Result size of Tidy Core
+  = {terms: 1,070, types: 3,235, coercions: 77,060, joins: 0/2}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Matrix.Transpose.$trModule2 = "CoreDump.Matrix.Transpose"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$trModule1 :: GHC.Types.TrName
+CoreDump.Matrix.Transpose.$trModule1
+  = GHC.Types.TrNameS CoreDump.Matrix.Transpose.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Matrix.Transpose.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$trModule3 :: GHC.Types.TrName
+CoreDump.Matrix.Transpose.$trModule3
+  = GHC.Types.TrNameS CoreDump.Matrix.Transpose.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$trModule :: GHC.Types.Module
+CoreDump.Matrix.Transpose.$trModule
+  = GHC.Types.Module
+      CoreDump.Matrix.Transpose.$trModule3
+      CoreDump.Matrix.Transpose.$trModule1
+
+-- RHS size: {terms: 8, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 -> GHC.Types.[] @ e
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+            @ e xs1
+      }
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 3, types: 49, coercions: 40, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+  :: (Data.Tensor.Static.IsTensor '[4, 3] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False])
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+  = (TensorInstances.$fIsTensor:Float5,
+     CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+     `cast` <Co:40>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 49, coercions: 40, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  :: (Data.Tensor.Static.IsTensor '[4, 3] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False])
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+  = (TensorInstances.$fIsTensor:Float5,
+     CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+     `cast` <Co:40>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 49, coercions: 40, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  :: (Data.Tensor.Static.IsTensor '[4, 3] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False])
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+  = (TensorInstances.$fIsTensor:Float5,
+     CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+     `cast` <Co:40>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 49, coercions: 40, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+  :: (Data.Tensor.Static.IsTensor '[4, 3] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False])
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+  = (TensorInstances.$fIsTensor:Float5,
+     CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+     `cast` <Co:40>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 49, coercions: 40, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  :: (Data.Tensor.Static.IsTensor '[4, 3] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+          'False, 'False, 'False, 'False])
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+  = (TensorInstances.$fIsTensor:Float5,
+     CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+     `cast` <Co:40>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 49, coercions: 40, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  :: (Data.Tensor.Static.IsTensor '[4, 3] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+          'False, 'False, 'False, 'False])
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+  = (TensorInstances.$fIsTensor:Float5,
+     CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+     `cast` <Co:40>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 49, coercions: 40, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+  :: (Data.Tensor.Static.IsTensor '[4, 3] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+          'False, 'False, 'False, 'False])
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+  = (TensorInstances.$fIsTensor:Float5,
+     CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+     `cast` <Co:40>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 49, coercions: 40, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  :: (Data.Tensor.Static.IsTensor '[4, 3] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+          'False, 'False, 'False, 'False])
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+  = (TensorInstances.$fIsTensor:Float5,
+     CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+     `cast` <Co:40>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 49, coercions: 40, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  :: (Data.Tensor.Static.IsTensor '[4, 3] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'True, 'False, 'False, 'False])
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+  = (TensorInstances.$fIsTensor:Float5,
+     CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+     `cast` <Co:40>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 49, coercions: 40, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  :: (Data.Tensor.Static.IsTensor '[4, 3] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'True, 'False, 'False])
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+  = (TensorInstances.$fIsTensor:Float5,
+     CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+     `cast` <Co:40>)
+
+-- RHS size: {terms: 11, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 ->
+          GHC.Types.:
+            @ e
+            x
+            (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+               @ e xs1)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 49, coercions: 40, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  :: (Data.Tensor.Static.IsTensor '[4, 3] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'True, 'False])
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+  = (TensorInstances.$fIsTensor:Float5,
+     CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+     `cast` <Co:40>)
+
+-- RHS size: {terms: 10, types: 13, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : x xs1 -> GHC.Types.: @ e x (GHC.Types.[] @ e)
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+            @ e xs1
+      }
+
+-- RHS size: {terms: 9, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  :: forall e. [e] -> [e]
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+  = \ (@ e) (ds :: [e]) ->
+      case ds of {
+        [] -> Data.Tensor.Static.impossible_notEnoughTensorElems @ [e];
+        : ds1 xs1 ->
+          CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+            @ e xs1
+      }
+
+-- RHS size: {terms: 3, types: 49, coercions: 40, joins: 0/0}
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  :: (Data.Tensor.Static.IsTensor '[4, 3] Float,
+      Data.Tensor.Static.GetSliceElemsWrk
+        '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+          'False, 'False, 'False, 'True])
+CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+  = (TensorInstances.$fIsTensor:Float5,
+     CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+     `cast` <Co:40>)
+
+-- RHS size: {terms: 95, types: 420, coercions: 76,580, joins: 0/2}
+transpose_ :: Matrix 4 3 Float -> Matrix 3 4 Float
+transpose_
+  = \ (m1 :: Matrix 4 3 Float) ->
+      let {
+        $wf
+          :: forall (x1 :: [GHC.Types.Nat]).
+             Type.List.MkCtx
+               [GHC.Types.Nat]
+               (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+               (Data.Matrix.Static.TransposeGoSym3 4 3 Float)
+               x1 =>
+             Float
+        $wf
+          = \ (@ (x1 :: [GHC.Types.Nat]))
+              (w :: Type.List.MkCtx
+                      [GHC.Types.Nat]
+                      (Data.Singletons.TyFun [GHC.Types.Nat] Constraint -> *)
+                      (Data.Matrix.Static.TransposeGoSym3 4 3 Float)
+                      x1) ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 3])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 3]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 3] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice'
+                                    (Data.Matrix.Static.ReverseIndex x1)
+                                    (Data.Tensor.Static.SliceEndIndex
+                                       (Data.Matrix.Static.ReverseIndex x1) '[1, 1] '[4, 3])
+                                    (Data.Tensor.Static.Sequence
+                                       (Data.Tensor.Static.IndexesRanges'
+                                          '[4, 3] (1 GHC.TypeNats.<=? 4)))))
+                            (w `cast` <Co:60>)))
+                      `cast` <Co:12>)
+              of cobox4
+              { __DEFAULT ->
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 3])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor
+                         @ '[4, 3]
+                         @ Float
+                         (GHC.Classes.$p1(%,%)
+                            @ (Data.Tensor.Static.IsTensor '[4, 3] Float)
+                            @ (Data.Tensor.Static.GetSliceElemsWrk
+                                 (Data.Tensor.Static.ElemsInSlice
+                                    (Data.Matrix.Static.ReverseIndex x1) '[1, 1] '[4, 3]))
+                            (w `cast` <Co:16>)))
+                      `cast` <Co:12>)
+              of cobox5
+              { __DEFAULT ->
+              let {
+                $dIsTensor1 :: Data.Tensor.Static.IsTensor '[4, 3] Float
+                $dIsTensor1
+                  = GHC.Classes.$p1(%,%)
+                      @ (Data.Tensor.Static.IsTensor '[4, 3] Float)
+                      @ (Data.Tensor.Static.GetSliceElemsWrk
+                           (Data.Tensor.Static.ElemsInSlice
+                              (Data.Matrix.Static.ReverseIndex x1) '[1, 1] '[4, 3]))
+                      (w `cast` <Co:16>) } in
+              case GHC.Types.HEq_sc
+                     @ Bool
+                     @ Bool
+                     @ (Data.Tensor.Static.PositiveDims '[4, 3])
+                     @ 'True
+                     ((Data.Tensor.Static.$p1IsTensor @ '[4, 3] @ Float $dIsTensor1)
+                      `cast` <Co:12>)
+              of cobox6
+              { __DEFAULT ->
+              case ((GHC.Classes.$p2(%,%)
+                       @ (Data.Tensor.Static.IsTensor '[4, 3] Float)
+                       @ (Data.Tensor.Static.GetSliceElemsWrk
+                            (Data.Tensor.Static.ElemsInSlice
+                               (Data.Matrix.Static.ReverseIndex x1) '[1, 1] '[4, 3]))
+                       (w `cast` <Co:16>))
+                    `cast` <Co:20>)
+                     @ Float
+                     (Data.Tensor.Static.toList @ '[4, 3] @ Float $dIsTensor1 m1)
+              of {
+                [] -> GHC.List.badHead @ Float;
+                : x ds1 -> x
+              }
+              }
+              }
+              } } in
+      case $wf
+             @ '[0, 0]
+             (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith23
+              `cast` <Co:6348>)
+      of
+      { GHC.Types.F# dt1 ->
+      case $wf
+             @ '[0, 1]
+             (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith21
+              `cast` <Co:6362>)
+      of
+      { GHC.Types.F# dt3 ->
+      case $wf
+             @ '[0, 2]
+             (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith19
+              `cast` <Co:6362>)
+      of
+      { GHC.Types.F# dt5 ->
+      case $wf
+             @ '[0, 3]
+             (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith17
+              `cast` <Co:6362>)
+      of
+      { GHC.Types.F# dt7 ->
+      case $wf
+             @ '[1, 0]
+             (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith15
+              `cast` <Co:6362>)
+      of
+      { GHC.Types.F# dt9 ->
+      case $wf
+             @ '[1, 1]
+             (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith13
+              `cast` <Co:6376>)
+      of
+      { GHC.Types.F# dt11 ->
+      case $wf
+             @ '[1, 2]
+             (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith11
+              `cast` <Co:6376>)
+      of
+      { GHC.Types.F# dt13 ->
+      case $wf
+             @ '[1, 3]
+             (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith9
+              `cast` <Co:6376>)
+      of
+      { GHC.Types.F# dt15 ->
+      case $wf
+             @ '[2, 0]
+             (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith7
+              `cast` <Co:6362>)
+      of
+      { GHC.Types.F# dt17 ->
+      case $wf
+             @ '[2, 1]
+             (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith5
+              `cast` <Co:6376>)
+      of
+      { GHC.Types.F# dt19 ->
+      case $wf
+             @ '[2, 2]
+             (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith3
+              `cast` <Co:6376>)
+      of
+      { GHC.Types.F# dt21 ->
+      case $wf
+             @ '[2, 3]
+             (CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith1
+              `cast` <Co:6376>)
+      of
+      { GHC.Types.F# dt23 ->
+      (TensorInstances.Tensor'3'4'Float
+         dt1 dt3 dt5 dt7 dt9 dt11 dt13 dt15 dt17 dt19 dt21 dt23)
+      `cast` <Co:2>
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+
+
+------ Local rules for imported ids --------
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '[]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk21
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk20
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk19
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk18
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'True, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk17
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'True, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk16
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'True,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk15
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'True, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk14
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'True, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk13
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'True,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk12
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'True, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk29
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk28
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk27
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk26
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'True, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk25
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'True, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk24
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'True,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk23
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'True, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk22
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk34
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk33
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk32
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk31
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'True, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk30
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk57
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk56
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk76
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk75
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'True, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk74
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'True, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk73
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk55
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'True, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk54
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'True, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk53
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'True,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk52
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk72
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'True, 'False, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk71
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'True, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk70
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'True,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk69
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'True, 'False, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk68
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'True, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk67
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk51
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'True, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk50
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'True, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk49
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'True,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk48
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'True, 'False, 'False,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk47
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'True, 'False,
+                                                                          'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk46
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'True,
+                                                                          'False, 'False, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk45
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk66
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk65
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'True, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk64
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'True,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk63
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk62
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'True, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk61
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'True,
+                                                                          'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk60
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'True, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk59
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'True, 'False,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk58
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk44
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk43
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk42
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'True,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk41
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk40
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk39
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'True,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk38
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk37
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'True, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True,
+                                                                    'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk36
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'True,
+                                                                          'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True, 'False]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk35
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'False, 'False, 'False,
+                                                                          'True]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'True]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:_$cgetSliceElemsWrk @ '['False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'False, 'False, 'False,
+                                                                    'False, 'True]
+                                                                $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:_$cgetSliceElemsWrk
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                           'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk1
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                           'False, 'False, 'False,
+                                                                           'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk2
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                           'False, 'False, 'False,
+                                                                           'False, 'False, 'False,
+                                                                           'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk3
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                           'False, 'False, 'False,
+                                                                           'False, 'False, 'False,
+                                                                           'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk7
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                           'False, 'False, 'False,
+                                                                           'False, 'False, 'False,
+                                                                           'False, 'False, 'False,
+                                                                           'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False,
+                     'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk11
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                           'False, 'False, 'False,
+                                                                           'False, 'False, 'False,
+                                                                           'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk10
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                           'False, 'False, 'False,
+                                                                           'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False,
+                                                                     'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk6
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                           'False, 'False, 'False,
+                                                                           'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk9
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                           'False, 'False, 'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk
+                   '['False, 'False, 'False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False, 'False, 'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk5
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                           'False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False, 'False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False,
+                                                                     'False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk8
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '['False]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '['False]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk4
+"SPEC/CoreDump.Matrix.Transpose $fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]"
+    forall ($dGetSliceElemsWrk
+              :: Data.Tensor.Static.GetSliceElemsWrk '[]).
+      Data.Tensor.Static.$fGetSliceElemsWrk:0_$cgetSliceElemsWrk @ '[]
+                                                                 $dGetSliceElemsWrk
+      = CoreDump.Matrix.Transpose.$s$fDemoteWithkxkctxctx:_$cdemoteWith_$s$fGetSliceElemsWrk:0_$cgetSliceElemsWrk
+
+ tests/CoreDump/Matrix/Transpose.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Matrix.Transpose where
+
+import Data.Matrix.Static
+import TensorInstances ()
+
+-- FIXME: Generates terrible Core.
+transpose_ :: Matrix 4 3 Float -> Matrix 3 4 Float
+transpose_ = transpose
+ tests/CoreDump/Tensor/Add.dump-simpl.ghc821.golden view
@@ -0,0 +1,76 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:30.9594365 UTC
+
+Result size of Tidy Core
+  = {terms: 96, types: 120, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Add.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Add.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Add.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Add.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Add.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Add.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Add.$trModule2 = "CoreDump.Tensor.Add"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Add.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Add.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Add.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Add.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Add.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Add.$trModule3 CoreDump.Tensor.Add.$trModule1
+
+-- RHS size: {terms: 81, types: 76, coercions: 4, joins: 0/0}
+add_
+  :: Tensor '[2, 3, 4] Float
+     -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+add_
+  = \ (t1 :: Tensor '[2, 3, 4] Float)
+      (t2 :: Tensor '[2, 3, 4] Float) ->
+      case t1 `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case t2 `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt29 dt30 dt31 dt32 dt33 dt34
+                                           dt35 dt36 dt37 dt38 dt39 dt40 dt41 dt42 dt43 dt44 dt45
+                                           dt46 dt47 dt48 dt49 dt50 dt51 dt52 ->
+      (TensorInstances.Tensor'2'3'4'Float
+         (GHC.Prim.plusFloat# dt dt29)
+         (GHC.Prim.plusFloat# dt1 dt30)
+         (GHC.Prim.plusFloat# dt2 dt31)
+         (GHC.Prim.plusFloat# dt3 dt32)
+         (GHC.Prim.plusFloat# dt4 dt33)
+         (GHC.Prim.plusFloat# dt5 dt34)
+         (GHC.Prim.plusFloat# dt6 dt35)
+         (GHC.Prim.plusFloat# dt7 dt36)
+         (GHC.Prim.plusFloat# dt8 dt37)
+         (GHC.Prim.plusFloat# dt9 dt38)
+         (GHC.Prim.plusFloat# dt10 dt39)
+         (GHC.Prim.plusFloat# dt11 dt40)
+         (GHC.Prim.plusFloat# dt12 dt41)
+         (GHC.Prim.plusFloat# dt13 dt42)
+         (GHC.Prim.plusFloat# dt14 dt43)
+         (GHC.Prim.plusFloat# dt15 dt44)
+         (GHC.Prim.plusFloat# dt16 dt45)
+         (GHC.Prim.plusFloat# dt17 dt46)
+         (GHC.Prim.plusFloat# dt18 dt47)
+         (GHC.Prim.plusFloat# dt19 dt48)
+         (GHC.Prim.plusFloat# dt20 dt49)
+         (GHC.Prim.plusFloat# dt21 dt50)
+         (GHC.Prim.plusFloat# dt22 dt51)
+         (GHC.Prim.plusFloat# dt23 dt52))
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Add.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Add where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+add_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+add_ = add
+ tests/CoreDump/Tensor/Append_0.dump-simpl.ghc821.golden view
@@ -0,0 +1,101 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:30.8034362 UTC
+
+Result size of Tidy Core
+  = {terms: 72, types: 120, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_0.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Append_0.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_0.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Append_0.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Append_0.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_0.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Append_0.$trModule2 = "CoreDump.Tensor.Append_0"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_0.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Append_0.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Append_0.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_0.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Append_0.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Append_0.$trModule3
+      CoreDump.Tensor.Append_0.$trModule1
+
+-- RHS size: {terms: 57, types: 76, coercions: 4, joins: 0/0}
+append_0_
+  :: Tensor '[2, 3, 4] Float
+     -> Tensor '[2, 3, 4] Float -> Tensor '[4, 3, 4] Float
+append_0_
+  = \ (st :: Tensor '[2, 3, 4] Float)
+      (t :: Tensor '[2, 3, 4] Float) ->
+      case st `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt29 dt30 dt31 dt32 dt33 dt34
+                                           dt35 dt36 dt37 dt38 dt39 dt40 dt41 dt42 dt43 dt44 dt45
+                                           dt46 dt47 dt48 dt49 dt50 dt51 dt52 ->
+      (TensorInstances.Tensor'4'3'4'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt4
+         dt5
+         dt6
+         dt7
+         dt8
+         dt9
+         dt10
+         dt11
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt17
+         dt18
+         dt19
+         dt20
+         dt21
+         dt22
+         dt23
+         dt29
+         dt30
+         dt31
+         dt32
+         dt33
+         dt34
+         dt35
+         dt36
+         dt37
+         dt38
+         dt39
+         dt40
+         dt41
+         dt42
+         dt43
+         dt44
+         dt45
+         dt46
+         dt47
+         dt48
+         dt49
+         dt50
+         dt51
+         dt52)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Append_0.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Append_0 where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+append_0_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float -> Tensor '[4, 3, 4] Float
+append_0_ st t = append @0 st t
+ tests/CoreDump/Tensor/Append_1.dump-simpl.ghc821.golden view
@@ -0,0 +1,101 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:29.9527971 UTC
+
+Result size of Tidy Core
+  = {terms: 72, types: 120, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_1.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Append_1.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_1.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Append_1.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Append_1.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_1.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Append_1.$trModule2 = "CoreDump.Tensor.Append_1"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_1.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Append_1.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Append_1.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_1.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Append_1.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Append_1.$trModule3
+      CoreDump.Tensor.Append_1.$trModule1
+
+-- RHS size: {terms: 57, types: 76, coercions: 4, joins: 0/0}
+append_1_
+  :: Tensor '[2, 3, 4] Float
+     -> Tensor '[2, 3, 4] Float -> Tensor '[2, 6, 4] Float
+append_1_
+  = \ (st :: Tensor '[2, 3, 4] Float)
+      (t :: Tensor '[2, 3, 4] Float) ->
+      case st `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt29 dt30 dt31 dt32 dt33 dt34
+                                           dt35 dt36 dt37 dt38 dt39 dt40 dt41 dt42 dt43 dt44 dt45
+                                           dt46 dt47 dt48 dt49 dt50 dt51 dt52 ->
+      (TensorInstances.Tensor'2'6'4'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt4
+         dt5
+         dt6
+         dt7
+         dt8
+         dt9
+         dt10
+         dt11
+         dt29
+         dt30
+         dt31
+         dt32
+         dt33
+         dt34
+         dt35
+         dt36
+         dt37
+         dt38
+         dt39
+         dt40
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt17
+         dt18
+         dt19
+         dt20
+         dt21
+         dt22
+         dt23
+         dt41
+         dt42
+         dt43
+         dt44
+         dt45
+         dt46
+         dt47
+         dt48
+         dt49
+         dt50
+         dt51
+         dt52)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Append_1.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Append_1 where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+append_1_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float -> Tensor '[2, 6, 4] Float
+append_1_ st t = append @1 st t
+ tests/CoreDump/Tensor/Append_2.dump-simpl.ghc821.golden view
@@ -0,0 +1,101 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:29.0841656 UTC
+
+Result size of Tidy Core
+  = {terms: 72, types: 120, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_2.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Append_2.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_2.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Append_2.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Append_2.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_2.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Append_2.$trModule2 = "CoreDump.Tensor.Append_2"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_2.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Append_2.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Append_2.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Append_2.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Append_2.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Append_2.$trModule3
+      CoreDump.Tensor.Append_2.$trModule1
+
+-- RHS size: {terms: 57, types: 76, coercions: 4, joins: 0/0}
+append_2_
+  :: Tensor '[2, 3, 4] Float
+     -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 8] Float
+append_2_
+  = \ (st :: Tensor '[2, 3, 4] Float)
+      (t :: Tensor '[2, 3, 4] Float) ->
+      case st `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt29 dt30 dt31 dt32 dt33 dt34
+                                           dt35 dt36 dt37 dt38 dt39 dt40 dt41 dt42 dt43 dt44 dt45
+                                           dt46 dt47 dt48 dt49 dt50 dt51 dt52 ->
+      (TensorInstances.Tensor'2'3'8'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt29
+         dt30
+         dt31
+         dt32
+         dt4
+         dt5
+         dt6
+         dt7
+         dt33
+         dt34
+         dt35
+         dt36
+         dt8
+         dt9
+         dt10
+         dt11
+         dt37
+         dt38
+         dt39
+         dt40
+         dt12
+         dt13
+         dt14
+         dt15
+         dt41
+         dt42
+         dt43
+         dt44
+         dt16
+         dt17
+         dt18
+         dt19
+         dt45
+         dt46
+         dt47
+         dt48
+         dt20
+         dt21
+         dt22
+         dt23
+         dt49
+         dt50
+         dt51
+         dt52)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Append_2.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Append_2 where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+append_2_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 8] Float
+append_2_ st t = append @2 st t
+ tests/CoreDump/Tensor/Cons_0.dump-simpl.ghc821.golden view
@@ -0,0 +1,86 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:28.2087535 UTC
+
+Result size of Tidy Core
+  = {terms: 60, types: 102, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_0.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Cons_0.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_0.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Cons_0.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Cons_0.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_0.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Cons_0.$trModule2 = "CoreDump.Tensor.Cons_0"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_0.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Cons_0.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Cons_0.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_0.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Cons_0.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Cons_0.$trModule3 CoreDump.Tensor.Cons_0.$trModule1
+
+-- RHS size: {terms: 45, types: 61, coercions: 4, joins: 0/0}
+cons_0_
+  :: Tensor '[3, 4] Float
+     -> Tensor '[2, 3, 4] Float -> Tensor '[3, 3, 4] Float
+cons_0_
+  = \ (st :: Tensor '[3, 4] Float) (t :: Tensor '[2, 3, 4] Float) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case st `cast` <Co:1> of
+      { TensorInstances.Tensor'3'4'Float dt29 dt30 dt31 dt32 dt33 dt34
+                                         dt35 dt36 dt37 dt38 dt39 dt40 ->
+      (TensorInstances.Tensor'3'3'4'Float
+         dt29
+         dt30
+         dt31
+         dt32
+         dt33
+         dt34
+         dt35
+         dt36
+         dt37
+         dt38
+         dt39
+         dt40
+         dt
+         dt1
+         dt2
+         dt3
+         dt4
+         dt5
+         dt6
+         dt7
+         dt8
+         dt9
+         dt10
+         dt11
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt17
+         dt18
+         dt19
+         dt20
+         dt21
+         dt22
+         dt23)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Cons_0.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Cons_0 where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+cons_0_ :: Tensor '[3, 4] Float -> Tensor '[2, 3, 4] Float -> Tensor '[3, 3, 4] Float
+cons_0_ st t = cons @0 st t
+ tests/CoreDump/Tensor/Cons_1.dump-simpl.ghc821.golden view
@@ -0,0 +1,82 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:27.6451524 UTC
+
+Result size of Tidy Core
+  = {terms: 56, types: 98, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_1.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Cons_1.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_1.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Cons_1.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Cons_1.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_1.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Cons_1.$trModule2 = "CoreDump.Tensor.Cons_1"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_1.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Cons_1.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Cons_1.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_1.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Cons_1.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Cons_1.$trModule3 CoreDump.Tensor.Cons_1.$trModule1
+
+-- RHS size: {terms: 41, types: 57, coercions: 4, joins: 0/0}
+cons_1_
+  :: Tensor '[2, 4] Float
+     -> Tensor '[2, 3, 4] Float -> Tensor '[2, 4, 4] Float
+cons_1_
+  = \ (st :: Tensor '[2, 4] Float) (t :: Tensor '[2, 3, 4] Float) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case st `cast` <Co:1> of
+      { TensorInstances.Tensor'2'4'Float dt29 dt30 dt31 dt32 dt33 dt34
+                                         dt35 dt36 ->
+      (TensorInstances.Tensor'2'4'4'Float
+         dt29
+         dt30
+         dt31
+         dt32
+         dt
+         dt1
+         dt2
+         dt3
+         dt4
+         dt5
+         dt6
+         dt7
+         dt8
+         dt9
+         dt10
+         dt11
+         dt33
+         dt34
+         dt35
+         dt36
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt17
+         dt18
+         dt19
+         dt20
+         dt21
+         dt22
+         dt23)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Cons_1.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Cons_1 where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+cons_1_ :: Tensor '[2, 4] Float -> Tensor '[2, 3, 4] Float -> Tensor '[2, 4, 4] Float
+cons_1_ st t = cons @1 st t
+ tests/CoreDump/Tensor/Cons_2.dump-simpl.ghc821.golden view
@@ -0,0 +1,79 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:27.0835515 UTC
+
+Result size of Tidy Core
+  = {terms: 54, types: 96, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_2.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Cons_2.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_2.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Cons_2.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Cons_2.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_2.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Cons_2.$trModule2 = "CoreDump.Tensor.Cons_2"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_2.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Cons_2.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Cons_2.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Cons_2.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Cons_2.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Cons_2.$trModule3 CoreDump.Tensor.Cons_2.$trModule1
+
+-- RHS size: {terms: 39, types: 55, coercions: 4, joins: 0/0}
+cons_2_
+  :: Tensor '[2, 3] Float
+     -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 5] Float
+cons_2_
+  = \ (st :: Tensor '[2, 3] Float) (t :: Tensor '[2, 3, 4] Float) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case st `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'Float dt29 dt30 dt31 dt32 dt33 dt34 ->
+      (TensorInstances.Tensor'2'3'5'Float
+         dt29
+         dt
+         dt1
+         dt2
+         dt3
+         dt30
+         dt4
+         dt5
+         dt6
+         dt7
+         dt31
+         dt8
+         dt9
+         dt10
+         dt11
+         dt32
+         dt12
+         dt13
+         dt14
+         dt15
+         dt33
+         dt16
+         dt17
+         dt18
+         dt19
+         dt34
+         dt20
+         dt21
+         dt22
+         dt23)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Cons_2.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Cons_2 where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+cons_2_ :: Tensor '[2, 3] Float -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 5] Float
+cons_2_ st t = cons @2 st t
+ tests/CoreDump/Tensor/Diff.dump-simpl.ghc821.golden view
@@ -0,0 +1,76 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:26.5511504 UTC
+
+Result size of Tidy Core
+  = {terms: 96, types: 120, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Diff.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Diff.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Diff.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Diff.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Diff.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Diff.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Diff.$trModule2 = "CoreDump.Tensor.Diff"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Diff.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Diff.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Diff.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Diff.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Diff.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Diff.$trModule3 CoreDump.Tensor.Diff.$trModule1
+
+-- RHS size: {terms: 81, types: 76, coercions: 4, joins: 0/0}
+diff_
+  :: Tensor '[2, 3, 4] Float
+     -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+diff_
+  = \ (t1 :: Tensor '[2, 3, 4] Float)
+      (t2 :: Tensor '[2, 3, 4] Float) ->
+      case t1 `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case t2 `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt29 dt30 dt31 dt32 dt33 dt34
+                                           dt35 dt36 dt37 dt38 dt39 dt40 dt41 dt42 dt43 dt44 dt45
+                                           dt46 dt47 dt48 dt49 dt50 dt51 dt52 ->
+      (TensorInstances.Tensor'2'3'4'Float
+         (GHC.Prim.minusFloat# dt dt29)
+         (GHC.Prim.minusFloat# dt1 dt30)
+         (GHC.Prim.minusFloat# dt2 dt31)
+         (GHC.Prim.minusFloat# dt3 dt32)
+         (GHC.Prim.minusFloat# dt4 dt33)
+         (GHC.Prim.minusFloat# dt5 dt34)
+         (GHC.Prim.minusFloat# dt6 dt35)
+         (GHC.Prim.minusFloat# dt7 dt36)
+         (GHC.Prim.minusFloat# dt8 dt37)
+         (GHC.Prim.minusFloat# dt9 dt38)
+         (GHC.Prim.minusFloat# dt10 dt39)
+         (GHC.Prim.minusFloat# dt11 dt40)
+         (GHC.Prim.minusFloat# dt12 dt41)
+         (GHC.Prim.minusFloat# dt13 dt42)
+         (GHC.Prim.minusFloat# dt14 dt43)
+         (GHC.Prim.minusFloat# dt15 dt44)
+         (GHC.Prim.minusFloat# dt16 dt45)
+         (GHC.Prim.minusFloat# dt17 dt46)
+         (GHC.Prim.minusFloat# dt18 dt47)
+         (GHC.Prim.minusFloat# dt19 dt48)
+         (GHC.Prim.minusFloat# dt20 dt49)
+         (GHC.Prim.minusFloat# dt21 dt50)
+         (GHC.Prim.minusFloat# dt22 dt51)
+         (GHC.Prim.minusFloat# dt23 dt52))
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Diff.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Diff where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+diff_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+diff_ = diff
+ tests/CoreDump/Tensor/EnumFromN.dump-simpl.ghc821.golden view
@@ -0,0 +1,139 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:26.39215 UTC
+
+Result size of Tidy Core
+  = {terms: 138, types: 59, coercions: 2, joins: 0/22}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.EnumFromN.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.EnumFromN.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.EnumFromN.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.EnumFromN.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.EnumFromN.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.EnumFromN.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.EnumFromN.$trModule2 = "CoreDump.Tensor.EnumFromN"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.EnumFromN.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.EnumFromN.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.EnumFromN.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.EnumFromN.$trModule :: GHC.Types.Module
+CoreDump.Tensor.EnumFromN.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.EnumFromN.$trModule3
+      CoreDump.Tensor.EnumFromN.$trModule1
+
+-- RHS size: {terms: 116, types: 23, coercions: 2, joins: 0/22}
+CoreDump.Tensor.EnumFromN.$wenumFromN_
+  :: GHC.Prim.Float# -> Tensor '[2, 3, 4] Float
+CoreDump.Tensor.EnumFromN.$wenumFromN_
+  = \ (ww :: GHC.Prim.Float#) ->
+      let {
+        a1 :: GHC.Prim.Float#
+        a1 = GHC.Prim.plusFloat# ww 1.0# } in
+      let {
+        a2 :: GHC.Prim.Float#
+        a2 = GHC.Prim.plusFloat# a1 1.0# } in
+      let {
+        a3 :: GHC.Prim.Float#
+        a3 = GHC.Prim.plusFloat# a2 1.0# } in
+      let {
+        a4 :: GHC.Prim.Float#
+        a4 = GHC.Prim.plusFloat# a3 1.0# } in
+      let {
+        a5 :: GHC.Prim.Float#
+        a5 = GHC.Prim.plusFloat# a4 1.0# } in
+      let {
+        a6 :: GHC.Prim.Float#
+        a6 = GHC.Prim.plusFloat# a5 1.0# } in
+      let {
+        a7 :: GHC.Prim.Float#
+        a7 = GHC.Prim.plusFloat# a6 1.0# } in
+      let {
+        a8 :: GHC.Prim.Float#
+        a8 = GHC.Prim.plusFloat# a7 1.0# } in
+      let {
+        a9 :: GHC.Prim.Float#
+        a9 = GHC.Prim.plusFloat# a8 1.0# } in
+      let {
+        a10 :: GHC.Prim.Float#
+        a10 = GHC.Prim.plusFloat# a9 1.0# } in
+      let {
+        a11 :: GHC.Prim.Float#
+        a11 = GHC.Prim.plusFloat# a10 1.0# } in
+      let {
+        a12 :: GHC.Prim.Float#
+        a12 = GHC.Prim.plusFloat# a11 1.0# } in
+      let {
+        a13 :: GHC.Prim.Float#
+        a13 = GHC.Prim.plusFloat# a12 1.0# } in
+      let {
+        a14 :: GHC.Prim.Float#
+        a14 = GHC.Prim.plusFloat# a13 1.0# } in
+      let {
+        a15 :: GHC.Prim.Float#
+        a15 = GHC.Prim.plusFloat# a14 1.0# } in
+      let {
+        a16 :: GHC.Prim.Float#
+        a16 = GHC.Prim.plusFloat# a15 1.0# } in
+      let {
+        a17 :: GHC.Prim.Float#
+        a17 = GHC.Prim.plusFloat# a16 1.0# } in
+      let {
+        a18 :: GHC.Prim.Float#
+        a18 = GHC.Prim.plusFloat# a17 1.0# } in
+      let {
+        a19 :: GHC.Prim.Float#
+        a19 = GHC.Prim.plusFloat# a18 1.0# } in
+      let {
+        a20 :: GHC.Prim.Float#
+        a20 = GHC.Prim.plusFloat# a19 1.0# } in
+      let {
+        a21 :: GHC.Prim.Float#
+        a21 = GHC.Prim.plusFloat# a20 1.0# } in
+      let {
+        a22 :: GHC.Prim.Float#
+        a22 = GHC.Prim.plusFloat# a21 1.0# } in
+      (TensorInstances.Tensor'2'3'4'Float
+         ww
+         a1
+         a2
+         a3
+         a4
+         a5
+         a6
+         a7
+         a8
+         a9
+         a10
+         a11
+         a12
+         a13
+         a14
+         a15
+         a16
+         a17
+         a18
+         a19
+         a20
+         a21
+         a22
+         (GHC.Prim.plusFloat# a22 1.0#))
+      `cast` <Co:2>
+
+-- RHS size: {terms: 6, types: 3, coercions: 0, joins: 0/0}
+enumFromN_ :: Float -> Tensor '[2, 3, 4] Float
+enumFromN_
+  = \ (w :: Float) ->
+      case w of { GHC.Types.F# ww1 ->
+      CoreDump.Tensor.EnumFromN.$wenumFromN_ ww1
+      }
+
+
+ tests/CoreDump/Tensor/EnumFromN.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.EnumFromN where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+enumFromN_ :: Float -> Tensor '[2, 3, 4] Float
+enumFromN_ = enumFromN
+ tests/CoreDump/Tensor/EnumFromStepN.dump-simpl.ghc821.golden view
@@ -0,0 +1,135 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:26.2673497 UTC
+
+Result size of Tidy Core
+  = {terms: 138, types: 48, coercions: 2, joins: 0/22}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.EnumFromStepN.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.EnumFromStepN.$trModule2
+  = "CoreDump.Tensor.EnumFromStepN"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.EnumFromStepN.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.EnumFromStepN.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.EnumFromStepN.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.EnumFromStepN.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.EnumFromStepN.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.EnumFromStepN.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.EnumFromStepN.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.EnumFromStepN.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.EnumFromStepN.$trModule :: GHC.Types.Module
+CoreDump.Tensor.EnumFromStepN.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.EnumFromStepN.$trModule3
+      CoreDump.Tensor.EnumFromStepN.$trModule1
+
+-- RHS size: {terms: 123, types: 28, coercions: 2, joins: 0/22}
+enumFromStepN_ :: Float -> Float -> Tensor '[2, 3, 4] Float
+enumFromStepN_
+  = \ (a6 :: Float) (x :: Float) ->
+      case a6 of { GHC.Types.F# x1 ->
+      case x of { GHC.Types.F# y ->
+      let {
+        a1 :: GHC.Prim.Float#
+        a1 = GHC.Prim.plusFloat# x1 y } in
+      let {
+        a2 :: GHC.Prim.Float#
+        a2 = GHC.Prim.plusFloat# a1 y } in
+      let {
+        a3 :: GHC.Prim.Float#
+        a3 = GHC.Prim.plusFloat# a2 y } in
+      let {
+        a4 :: GHC.Prim.Float#
+        a4 = GHC.Prim.plusFloat# a3 y } in
+      let {
+        a5 :: GHC.Prim.Float#
+        a5 = GHC.Prim.plusFloat# a4 y } in
+      let {
+        a7 :: GHC.Prim.Float#
+        a7 = GHC.Prim.plusFloat# a5 y } in
+      let {
+        a8 :: GHC.Prim.Float#
+        a8 = GHC.Prim.plusFloat# a7 y } in
+      let {
+        a9 :: GHC.Prim.Float#
+        a9 = GHC.Prim.plusFloat# a8 y } in
+      let {
+        a10 :: GHC.Prim.Float#
+        a10 = GHC.Prim.plusFloat# a9 y } in
+      let {
+        a11 :: GHC.Prim.Float#
+        a11 = GHC.Prim.plusFloat# a10 y } in
+      let {
+        a12 :: GHC.Prim.Float#
+        a12 = GHC.Prim.plusFloat# a11 y } in
+      let {
+        a13 :: GHC.Prim.Float#
+        a13 = GHC.Prim.plusFloat# a12 y } in
+      let {
+        a14 :: GHC.Prim.Float#
+        a14 = GHC.Prim.plusFloat# a13 y } in
+      let {
+        a15 :: GHC.Prim.Float#
+        a15 = GHC.Prim.plusFloat# a14 y } in
+      let {
+        a16 :: GHC.Prim.Float#
+        a16 = GHC.Prim.plusFloat# a15 y } in
+      let {
+        a17 :: GHC.Prim.Float#
+        a17 = GHC.Prim.plusFloat# a16 y } in
+      let {
+        a18 :: GHC.Prim.Float#
+        a18 = GHC.Prim.plusFloat# a17 y } in
+      let {
+        a19 :: GHC.Prim.Float#
+        a19 = GHC.Prim.plusFloat# a18 y } in
+      let {
+        a20 :: GHC.Prim.Float#
+        a20 = GHC.Prim.plusFloat# a19 y } in
+      let {
+        a21 :: GHC.Prim.Float#
+        a21 = GHC.Prim.plusFloat# a20 y } in
+      let {
+        a22 :: GHC.Prim.Float#
+        a22 = GHC.Prim.plusFloat# a21 y } in
+      let {
+        a23 :: GHC.Prim.Float#
+        a23 = GHC.Prim.plusFloat# a22 y } in
+      (TensorInstances.Tensor'2'3'4'Float
+         x1
+         a1
+         a2
+         a3
+         a4
+         a5
+         a7
+         a8
+         a9
+         a10
+         a11
+         a12
+         a13
+         a14
+         a15
+         a16
+         a17
+         a18
+         a19
+         a20
+         a21
+         a22
+         a23
+         (GHC.Prim.plusFloat# a23 y))
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/EnumFromStepN.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.EnumFromStepN where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+enumFromStepN_ :: Float -> Float -> Tensor '[2, 3, 4] Float
+enumFromStepN_ = enumFromStepN
+ tests/CoreDump/Tensor/Fill.dump-simpl.ghc821.golden view
@@ -0,0 +1,39 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:25.6263477 UTC
+
+Result size of Tidy Core
+  = {terms: 41, types: 20, coercions: 0, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Fill.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Fill.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Fill.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Fill.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Fill.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Fill.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Fill.$trModule2 = "CoreDump.Tensor.Fill"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Fill.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Fill.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Fill.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Fill.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Fill.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Fill.$trModule3 CoreDump.Tensor.Fill.$trModule1
+
+-- RHS size: {terms: 26, types: 1, coercions: 0, joins: 0/0}
+fill_ :: Float -> Tensor '[2, 3, 4] Float
+fill_
+  = \ (x :: Float) ->
+      TensorInstances.$WTensor'2'3'4'Float
+        x x x x x x x x x x x x x x x x x x x x x x x x
+
+
+ tests/CoreDump/Tensor/Fill.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Fill where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+fill_ :: Float -> Tensor '[2, 3, 4] Float
+fill_ = fill
+ tests/CoreDump/Tensor/Generate.dump-simpl.ghc821.golden view
@@ -0,0 +1,138 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:25.5483475 UTC
+
+Result size of Tidy Core
+  = {terms: 137, types: 656, coercions: 2, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Generate.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Generate.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Generate.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Generate.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Generate.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Generate.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Generate.$trModule2 = "CoreDump.Tensor.Generate"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Generate.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Generate.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Generate.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Generate.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Generate.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Generate.$trModule3
+      CoreDump.Tensor.Generate.$trModule1
+
+-- RHS size: {terms: 122, types: 631, coercions: 2, joins: 0/0}
+generate_
+  :: (forall (index :: [Nat]). Proxy index -> Float)
+     -> Tensor '[2, 3, 4] Float
+generate_
+  = \ (ds :: forall (index :: [Nat]). Proxy index -> Float) ->
+      case ds @ '[0, 0, 0] (Data.Proxy.Proxy @ [Nat] @ '[0, 0, 0]) of
+      { GHC.Types.F# dt1 ->
+      case ds @ '[0, 0, 1] (Data.Proxy.Proxy @ [Nat] @ '[0, 0, 1]) of
+      { GHC.Types.F# dt3 ->
+      case ds @ '[0, 0, 2] (Data.Proxy.Proxy @ [Nat] @ '[0, 0, 2]) of
+      { GHC.Types.F# dt5 ->
+      case ds @ '[0, 0, 3] (Data.Proxy.Proxy @ [Nat] @ '[0, 0, 3]) of
+      { GHC.Types.F# dt7 ->
+      case ds @ '[0, 1, 0] (Data.Proxy.Proxy @ [Nat] @ '[0, 1, 0]) of
+      { GHC.Types.F# dt9 ->
+      case ds @ '[0, 1, 1] (Data.Proxy.Proxy @ [Nat] @ '[0, 1, 1]) of
+      { GHC.Types.F# dt11 ->
+      case ds @ '[0, 1, 2] (Data.Proxy.Proxy @ [Nat] @ '[0, 1, 2]) of
+      { GHC.Types.F# dt13 ->
+      case ds @ '[0, 1, 3] (Data.Proxy.Proxy @ [Nat] @ '[0, 1, 3]) of
+      { GHC.Types.F# dt15 ->
+      case ds @ '[0, 2, 0] (Data.Proxy.Proxy @ [Nat] @ '[0, 2, 0]) of
+      { GHC.Types.F# dt17 ->
+      case ds @ '[0, 2, 1] (Data.Proxy.Proxy @ [Nat] @ '[0, 2, 1]) of
+      { GHC.Types.F# dt19 ->
+      case ds @ '[0, 2, 2] (Data.Proxy.Proxy @ [Nat] @ '[0, 2, 2]) of
+      { GHC.Types.F# dt21 ->
+      case ds @ '[0, 2, 3] (Data.Proxy.Proxy @ [Nat] @ '[0, 2, 3]) of
+      { GHC.Types.F# dt23 ->
+      case ds @ '[1, 0, 0] (Data.Proxy.Proxy @ [Nat] @ '[1, 0, 0]) of
+      { GHC.Types.F# dt25 ->
+      case ds @ '[1, 0, 1] (Data.Proxy.Proxy @ [Nat] @ '[1, 0, 1]) of
+      { GHC.Types.F# dt27 ->
+      case ds @ '[1, 0, 2] (Data.Proxy.Proxy @ [Nat] @ '[1, 0, 2]) of
+      { GHC.Types.F# dt29 ->
+      case ds @ '[1, 0, 3] (Data.Proxy.Proxy @ [Nat] @ '[1, 0, 3]) of
+      { GHC.Types.F# dt31 ->
+      case ds @ '[1, 1, 0] (Data.Proxy.Proxy @ [Nat] @ '[1, 1, 0]) of
+      { GHC.Types.F# dt33 ->
+      case ds @ '[1, 1, 1] (Data.Proxy.Proxy @ [Nat] @ '[1, 1, 1]) of
+      { GHC.Types.F# dt35 ->
+      case ds @ '[1, 1, 2] (Data.Proxy.Proxy @ [Nat] @ '[1, 1, 2]) of
+      { GHC.Types.F# dt37 ->
+      case ds @ '[1, 1, 3] (Data.Proxy.Proxy @ [Nat] @ '[1, 1, 3]) of
+      { GHC.Types.F# dt39 ->
+      case ds @ '[1, 2, 0] (Data.Proxy.Proxy @ [Nat] @ '[1, 2, 0]) of
+      { GHC.Types.F# dt41 ->
+      case ds @ '[1, 2, 1] (Data.Proxy.Proxy @ [Nat] @ '[1, 2, 1]) of
+      { GHC.Types.F# dt43 ->
+      case ds @ '[1, 2, 2] (Data.Proxy.Proxy @ [Nat] @ '[1, 2, 2]) of
+      { GHC.Types.F# dt45 ->
+      case ds @ '[1, 2, 3] (Data.Proxy.Proxy @ [Nat] @ '[1, 2, 3]) of
+      { GHC.Types.F# dt47 ->
+      (TensorInstances.Tensor'2'3'4'Float
+         dt1
+         dt3
+         dt5
+         dt7
+         dt9
+         dt11
+         dt13
+         dt15
+         dt17
+         dt19
+         dt21
+         dt23
+         dt25
+         dt27
+         dt29
+         dt31
+         dt33
+         dt35
+         dt37
+         dt39
+         dt41
+         dt43
+         dt45
+         dt47)
+      `cast` <Co:2>
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Generate.hs view
@@ -0,0 +1,13 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+{-# LANGUAGE RankNTypes            #-}
+
+module CoreDump.Tensor.Generate where
+
+import Data.Proxy
+import Data.Tensor.Static
+import GHC.TypeLits
+import TensorInstances ()
+
+generate_ :: (forall (index :: [Nat]). Proxy index -> Float) -> Tensor '[2, 3, 4] Float
+generate_ = generate @'[2, 3, 4] @Float @_ @()
+ tests/CoreDump/Tensor/GenerateKnownNats.dump-simpl.ghc821.golden view
@@ -0,0 +1,1753 @@+
+==================== Tidy Core ====================
+2017-09-12 23:15:38.4003859 UTC
+
+Result size of Tidy Core
+  = {terms: 1,457, types: 862, coercions: 4, joins: 38/38}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateKnownNats.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.GenerateKnownNats.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateKnownNats.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.GenerateKnownNats.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.GenerateKnownNats.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateKnownNats.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.GenerateKnownNats.$trModule2
+  = "CoreDump.Tensor.GenerateKnownNats"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateKnownNats.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.GenerateKnownNats.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.GenerateKnownNats.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateKnownNats.$trModule :: GHC.Types.Module
+CoreDump.Tensor.GenerateKnownNats.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.GenerateKnownNats.$trModule3
+      CoreDump.Tensor.GenerateKnownNats.$trModule1
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateKnownNats.generateKnownNats_3 :: Integer
+CoreDump.Tensor.GenerateKnownNats.generateKnownNats_3 = 0
+
+-- RHS size: {terms: 39, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2
+  :: GHC.Natural.Natural
+CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2
+  = case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_3 of {
+      integer-gmp-1.0.1.0:GHC.Integer.Type.S# i# ->
+        case GHC.Prim.tagToEnum# @ Bool (GHC.Prim.>=# i# 0#) of {
+          False -> GHC.Natural.underflowError @ GHC.Natural.Natural;
+          True -> GHC.Natural.NatS# (GHC.Prim.int2Word# i#)
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt ->
+        case GHC.Prim.uncheckedIShiftRL# (GHC.Prim.sizeofByteArray# dt) 3#
+        of {
+          __DEFAULT ->
+            case GHC.Prim.sizeofByteArray# dt of {
+              __DEFAULT -> GHC.Natural.NatJ# dt;
+              0# -> GHC.Natural.underflowError @ GHC.Natural.Natural
+            };
+          1# ->
+            case GHC.Prim.indexWordArray# dt 0# of wild2 { __DEFAULT ->
+            GHC.Natural.NatS# wild2
+            }
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jn# ipv ->
+        GHC.Natural.underflowError @ GHC.Natural.Natural
+    }
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl :: Integer
+lvl = 2
+
+-- RHS size: {terms: 39, types: 12, coercions: 0, joins: 0/0}
+$dKnownNat :: GHC.Natural.Natural
+$dKnownNat
+  = case lvl of {
+      integer-gmp-1.0.1.0:GHC.Integer.Type.S# i# ->
+        case GHC.Prim.tagToEnum# @ Bool (GHC.Prim.>=# i# 0#) of {
+          False -> GHC.Natural.underflowError @ GHC.Natural.Natural;
+          True -> GHC.Natural.NatS# (GHC.Prim.int2Word# i#)
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt ->
+        case GHC.Prim.uncheckedIShiftRL# (GHC.Prim.sizeofByteArray# dt) 3#
+        of {
+          __DEFAULT ->
+            case GHC.Prim.sizeofByteArray# dt of {
+              __DEFAULT -> GHC.Natural.NatJ# dt;
+              0# -> GHC.Natural.underflowError @ GHC.Natural.Natural
+            };
+          1# ->
+            case GHC.Prim.indexWordArray# dt 0# of wild2 { __DEFAULT ->
+            GHC.Natural.NatS# wild2
+            }
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jn# ipv ->
+        GHC.Natural.underflowError @ GHC.Natural.Natural
+    }
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl1 :: Integer
+lvl1 = 1
+
+-- RHS size: {terms: 39, types: 12, coercions: 0, joins: 0/0}
+$dKnownNat1 :: GHC.Natural.Natural
+$dKnownNat1
+  = case lvl1 of {
+      integer-gmp-1.0.1.0:GHC.Integer.Type.S# i# ->
+        case GHC.Prim.tagToEnum# @ Bool (GHC.Prim.>=# i# 0#) of {
+          False -> GHC.Natural.underflowError @ GHC.Natural.Natural;
+          True -> GHC.Natural.NatS# (GHC.Prim.int2Word# i#)
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt ->
+        case GHC.Prim.uncheckedIShiftRL# (GHC.Prim.sizeofByteArray# dt) 3#
+        of {
+          __DEFAULT ->
+            case GHC.Prim.sizeofByteArray# dt of {
+              __DEFAULT -> GHC.Natural.NatJ# dt;
+              0# -> GHC.Natural.underflowError @ GHC.Natural.Natural
+            };
+          1# ->
+            case GHC.Prim.indexWordArray# dt 0# of wild2 { __DEFAULT ->
+            GHC.Natural.NatS# wild2
+            }
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jn# ipv ->
+        GHC.Natural.underflowError @ GHC.Natural.Natural
+    }
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl2 :: Integer
+lvl2 = 3
+
+-- RHS size: {terms: 1,295, types: 782, coercions: 4, joins: 38/38}
+CoreDump.Tensor.GenerateKnownNats.generateKnownNats_1
+  :: GHC.Prim.Int# -> Tensor '[2, 3, 4] Float
+CoreDump.Tensor.GenerateKnownNats.generateKnownNats_1
+  = \ (x :: GHC.Prim.Int#) ->
+      join {
+        $j :: GHC.Prim.Int# -> Tensor '[2, 3, 4] Float
+        $j (x1 :: GHC.Prim.Int#)
+          = join {
+              $j1 :: GHC.Prim.Int# -> Tensor '[2, 3, 4] Float
+              $j1 (y :: GHC.Prim.Int#)
+                = join {
+                    $j2 :: GHC.Prim.Int# -> Tensor '[2, 3, 4] Float
+                    $j2 (x2 :: GHC.Prim.Int#)
+                      = join {
+                          $j3 :: GHC.Prim.Int# -> Tensor '[2, 3, 4] Float
+                          $j3 (x3 :: GHC.Prim.Int#)
+                            = join {
+                                $j4 :: GHC.Prim.Int# -> Tensor '[2, 3, 4] Float
+                                $j4 (y1 :: GHC.Prim.Int#)
+                                  = join {
+                                      $j5 :: GHC.Prim.Int# -> Tensor '[2, 3, 4] Float
+                                      $j5 (x4 :: GHC.Prim.Int#)
+                                        = join {
+                                            $j6 :: GHC.Prim.Int# -> Tensor '[2, 3, 4] Float
+                                            $j6 (x5 :: GHC.Prim.Int#)
+                                              = join {
+                                                  $j7 :: GHC.Prim.Int# -> Tensor '[2, 3, 4] Float
+                                                  $j7 (y2 :: GHC.Prim.Int#)
+                                                    = join {
+                                                        $j8
+                                                          :: GHC.Prim.Int#
+                                                             -> Tensor '[2, 3, 4] Float
+                                                        $j8 (x6 :: GHC.Prim.Int#)
+                                                          = join {
+                                                              $j9
+                                                                :: GHC.Prim.Int#
+                                                                   -> Tensor '[2, 3, 4] Float
+                                                              $j9 (x7 :: GHC.Prim.Int#)
+                                                                = join {
+                                                                    $j10
+                                                                      :: GHC.Prim.Int#
+                                                                         -> Tensor '[2, 3, 4] Float
+                                                                    $j10 (y3 :: GHC.Prim.Int#)
+                                                                      = join {
+                                                                          $j11
+                                                                            :: GHC.Prim.Int#
+                                                                               -> Tensor
+                                                                                    '[2, 3, 4] Float
+                                                                          $j11 (x8 :: GHC.Prim.Int#)
+                                                                            = join {
+                                                                                $j12
+                                                                                  :: GHC.Prim.Int#
+                                                                                     -> Tensor
+                                                                                          '[2, 3, 4]
+                                                                                          Float
+                                                                                $j12 (x9
+                                                                                        :: GHC.Prim.Int#)
+                                                                                  = join {
+                                                                                      $j13
+                                                                                        :: GHC.Prim.Int#
+                                                                                           -> Tensor
+                                                                                                '[2,
+                                                                                                  3,
+                                                                                                  4]
+                                                                                                Float
+                                                                                      $j13 (x10
+                                                                                              :: GHC.Prim.Int#)
+                                                                                        = join {
+                                                                                            $j14
+                                                                                              :: GHC.Prim.Int#
+                                                                                                 -> Tensor
+                                                                                                      '[2,
+                                                                                                        3,
+                                                                                                        4]
+                                                                                                      Float
+                                                                                            $j14 (x11
+                                                                                                    :: GHC.Prim.Int#)
+                                                                                              = join {
+                                                                                                  $j15
+                                                                                                    :: GHC.Prim.Int#
+                                                                                                       -> Tensor
+                                                                                                            '[2,
+                                                                                                              3,
+                                                                                                              4]
+                                                                                                            Float
+                                                                                                  $j15 (x12
+                                                                                                          :: GHC.Prim.Int#)
+                                                                                                    = join {
+                                                                                                        $j16
+                                                                                                          :: GHC.Prim.Int#
+                                                                                                             -> Tensor
+                                                                                                                  '[2,
+                                                                                                                    3,
+                                                                                                                    4]
+                                                                                                                  Float
+                                                                                                        $j16 (x13
+                                                                                                                :: GHC.Prim.Int#)
+                                                                                                          = join {
+                                                                                                              $j17
+                                                                                                                :: GHC.Prim.Int#
+                                                                                                                   -> Tensor
+                                                                                                                        '[2,
+                                                                                                                          3,
+                                                                                                                          4]
+                                                                                                                        Float
+                                                                                                              $j17 (x14
+                                                                                                                      :: GHC.Prim.Int#)
+                                                                                                                = join {
+                                                                                                                    $j18
+                                                                                                                      :: GHC.Prim.Int#
+                                                                                                                         -> Tensor
+                                                                                                                              '[2,
+                                                                                                                                3,
+                                                                                                                                4]
+                                                                                                                              Float
+                                                                                                                    $j18 (x15
+                                                                                                                            :: GHC.Prim.Int#)
+                                                                                                                      = join {
+                                                                                                                          $j19
+                                                                                                                            :: GHC.Prim.Int#
+                                                                                                                               -> Tensor
+                                                                                                                                    '[2,
+                                                                                                                                      3,
+                                                                                                                                      4]
+                                                                                                                                    Float
+                                                                                                                          $j19 (x16
+                                                                                                                                  :: GHC.Prim.Int#)
+                                                                                                                            = join {
+                                                                                                                                $j20
+                                                                                                                                  :: GHC.Prim.Int#
+                                                                                                                                     -> Tensor
+                                                                                                                                          '[2,
+                                                                                                                                            3,
+                                                                                                                                            4]
+                                                                                                                                          Float
+                                                                                                                                $j20 (x17
+                                                                                                                                        :: GHC.Prim.Int#)
+                                                                                                                                  = join {
+                                                                                                                                      $j21
+                                                                                                                                        :: GHC.Prim.Int#
+                                                                                                                                           -> Tensor
+                                                                                                                                                '[2,
+                                                                                                                                                  3,
+                                                                                                                                                  4]
+                                                                                                                                                Float
+                                                                                                                                      $j21 (x18
+                                                                                                                                              :: GHC.Prim.Int#)
+                                                                                                                                        = join {
+                                                                                                                                            $j22
+                                                                                                                                              :: GHC.Prim.Int#
+                                                                                                                                                 -> Tensor
+                                                                                                                                                      '[2,
+                                                                                                                                                        3,
+                                                                                                                                                        4]
+                                                                                                                                                      Float
+                                                                                                                                            $j22 (x19
+                                                                                                                                                    :: GHC.Prim.Int#)
+                                                                                                                                              = join {
+                                                                                                                                                  $j23
+                                                                                                                                                    :: GHC.Prim.Int#
+                                                                                                                                                       -> Tensor
+                                                                                                                                                            '[2,
+                                                                                                                                                              3,
+                                                                                                                                                              4]
+                                                                                                                                                            Float
+                                                                                                                                                  $j23 (x20
+                                                                                                                                                          :: GHC.Prim.Int#)
+                                                                                                                                                    = join {
+                                                                                                                                                        $j24
+                                                                                                                                                          :: GHC.Prim.Int#
+                                                                                                                                                             -> Tensor
+                                                                                                                                                                  '[2,
+                                                                                                                                                                    3,
+                                                                                                                                                                    4]
+                                                                                                                                                                  Float
+                                                                                                                                                        $j24 (x21
+                                                                                                                                                                :: GHC.Prim.Int#)
+                                                                                                                                                          = join {
+                                                                                                                                                              $j25
+                                                                                                                                                                :: GHC.Prim.Int#
+                                                                                                                                                                   -> Tensor
+                                                                                                                                                                        '[2,
+                                                                                                                                                                          3,
+                                                                                                                                                                          4]
+                                                                                                                                                                        Float
+                                                                                                                                                              $j25 (x22
+                                                                                                                                                                      :: GHC.Prim.Int#)
+                                                                                                                                                                = join {
+                                                                                                                                                                    $j26
+                                                                                                                                                                      :: GHC.Prim.Int#
+                                                                                                                                                                         -> Tensor
+                                                                                                                                                                              '[2,
+                                                                                                                                                                                3,
+                                                                                                                                                                                4]
+                                                                                                                                                                              Float
+                                                                                                                                                                    $j26 (x23
+                                                                                                                                                                            :: GHC.Prim.Int#)
+                                                                                                                                                                      = join {
+                                                                                                                                                                          $j27
+                                                                                                                                                                            :: GHC.Prim.Int#
+                                                                                                                                                                               -> Tensor
+                                                                                                                                                                                    '[2,
+                                                                                                                                                                                      3,
+                                                                                                                                                                                      4]
+                                                                                                                                                                                    Float
+                                                                                                                                                                          $j27 (x24
+                                                                                                                                                                                  :: GHC.Prim.Int#)
+                                                                                                                                                                            = join {
+                                                                                                                                                                                $j28
+                                                                                                                                                                                  :: GHC.Prim.Int#
+                                                                                                                                                                                     -> Tensor
+                                                                                                                                                                                          '[2,
+                                                                                                                                                                                            3,
+                                                                                                                                                                                            4]
+                                                                                                                                                                                          Float
+                                                                                                                                                                                $j28 (x25
+                                                                                                                                                                                        :: GHC.Prim.Int#)
+                                                                                                                                                                                  = join {
+                                                                                                                                                                                      $j29
+                                                                                                                                                                                        :: GHC.Prim.Int#
+                                                                                                                                                                                           -> Tensor
+                                                                                                                                                                                                '[2,
+                                                                                                                                                                                                  3,
+                                                                                                                                                                                                  4]
+                                                                                                                                                                                                Float
+                                                                                                                                                                                      $j29 (x26
+                                                                                                                                                                                              :: GHC.Prim.Int#)
+                                                                                                                                                                                        = join {
+                                                                                                                                                                                            $j30
+                                                                                                                                                                                              :: GHC.Prim.Int#
+                                                                                                                                                                                                 -> Tensor
+                                                                                                                                                                                                      '[2,
+                                                                                                                                                                                                        3,
+                                                                                                                                                                                                        4]
+                                                                                                                                                                                                      Float
+                                                                                                                                                                                            $j30 (x27
+                                                                                                                                                                                                    :: GHC.Prim.Int#)
+                                                                                                                                                                                              = join {
+                                                                                                                                                                                                  $j31
+                                                                                                                                                                                                    :: GHC.Prim.Int#
+                                                                                                                                                                                                       -> Tensor
+                                                                                                                                                                                                            '[2,
+                                                                                                                                                                                                              3,
+                                                                                                                                                                                                              4]
+                                                                                                                                                                                                            Float
+                                                                                                                                                                                                  $j31 (x28
+                                                                                                                                                                                                          :: GHC.Prim.Int#)
+                                                                                                                                                                                                    = join {
+                                                                                                                                                                                                        $j32
+                                                                                                                                                                                                          :: GHC.Prim.Int#
+                                                                                                                                                                                                             -> Tensor
+                                                                                                                                                                                                                  '[2,
+                                                                                                                                                                                                                    3,
+                                                                                                                                                                                                                    4]
+                                                                                                                                                                                                                  Float
+                                                                                                                                                                                                        $j32 (x29
+                                                                                                                                                                                                                :: GHC.Prim.Int#)
+                                                                                                                                                                                                          = join {
+                                                                                                                                                                                                              $j33
+                                                                                                                                                                                                                :: GHC.Prim.Int#
+                                                                                                                                                                                                                   -> Tensor
+                                                                                                                                                                                                                        '[2,
+                                                                                                                                                                                                                          3,
+                                                                                                                                                                                                                          4]
+                                                                                                                                                                                                                        Float
+                                                                                                                                                                                                              $j33 (x30
+                                                                                                                                                                                                                      :: GHC.Prim.Int#)
+                                                                                                                                                                                                                = join {
+                                                                                                                                                                                                                    $j34
+                                                                                                                                                                                                                      :: GHC.Prim.Int#
+                                                                                                                                                                                                                         -> Tensor
+                                                                                                                                                                                                                              '[2,
+                                                                                                                                                                                                                                3,
+                                                                                                                                                                                                                                4]
+                                                                                                                                                                                                                              Float
+                                                                                                                                                                                                                    $j34 (x31
+                                                                                                                                                                                                                            :: GHC.Prim.Int#)
+                                                                                                                                                                                                                      = join {
+                                                                                                                                                                                                                          $j35
+                                                                                                                                                                                                                            :: GHC.Prim.Int#
+                                                                                                                                                                                                                               -> Tensor
+                                                                                                                                                                                                                                    '[2,
+                                                                                                                                                                                                                                      3,
+                                                                                                                                                                                                                                      4]
+                                                                                                                                                                                                                                    Float
+                                                                                                                                                                                                                          $j35 (x32
+                                                                                                                                                                                                                                  :: GHC.Prim.Int#)
+                                                                                                                                                                                                                            = join {
+                                                                                                                                                                                                                                $j36
+                                                                                                                                                                                                                                  :: GHC.Prim.Int#
+                                                                                                                                                                                                                                     -> Tensor
+                                                                                                                                                                                                                                          '[2,
+                                                                                                                                                                                                                                            3,
+                                                                                                                                                                                                                                            4]
+                                                                                                                                                                                                                                          Float
+                                                                                                                                                                                                                                $j36 (x33
+                                                                                                                                                                                                                                        :: GHC.Prim.Int#)
+                                                                                                                                                                                                                                  = join {
+                                                                                                                                                                                                                                      $j37
+                                                                                                                                                                                                                                        :: GHC.Prim.Int#
+                                                                                                                                                                                                                                           -> Tensor
+                                                                                                                                                                                                                                                '[2,
+                                                                                                                                                                                                                                                  3,
+                                                                                                                                                                                                                                                  4]
+                                                                                                                                                                                                                                                Float
+                                                                                                                                                                                                                                      $j37 (x34
+                                                                                                                                                                                                                                              :: GHC.Prim.Int#)
+                                                                                                                                                                                                                                        = case $dKnownNat1
+                                                                                                                                                                                                                                          of {
+                                                                                                                                                                                                                                            GHC.Natural.NatS# w ->
+                                                                                                                                                                                                                                              case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                                                     (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                                                                                                        w)
+                                                                                                                                                                                                                                              of wild1
+                                                                                                                                                                                                                                              { __DEFAULT ->
+                                                                                                                                                                                                                                              (TensorInstances.Tensor'2'3'4'Float
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x1
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x2
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x3
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y1))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x4
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x5
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y2))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x6
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x7
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y3))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x8
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x9
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x10
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x11
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y1))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x12
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x13
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y2))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x14
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x15
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y3))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x16
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x17
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x18
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x19
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y1))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x20
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x21
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y2))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x22
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x23
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y3))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x24
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x1
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x25
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x3
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y1))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x26
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x5
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y2))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x27
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x7
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y3))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x28
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x9
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x29
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x11
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y1))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x30
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x13
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y2))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x31
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x15
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y3))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x32
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x17
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x33
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x19
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y1))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x34
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x21
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y2))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             wild1
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x23
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y3)))
+                                                                                                                                                                                                                                              `cast` <Co:2>
+                                                                                                                                                                                                                                              };
+                                                                                                                                                                                                                                            GHC.Natural.NatJ# dt ->
+                                                                                                                                                                                                                                              case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                                                     (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                                                                                                        dt)
+                                                                                                                                                                                                                                              of wild1
+                                                                                                                                                                                                                                              { __DEFAULT ->
+                                                                                                                                                                                                                                              (TensorInstances.Tensor'2'3'4'Float
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x1
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x2
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x3
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y1))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x4
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x5
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y2))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x6
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x7
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y3))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x8
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x9
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x10
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x11
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y1))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x12
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x13
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y2))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x14
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x15
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y3))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x16
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x17
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x18
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x19
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y1))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x20
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x21
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y2))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x22
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x23
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y3))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x24
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x1
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x25
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x3
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y1))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x26
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x5
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y2))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x27
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x7
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y3))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x28
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x9
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x29
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x11
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y1))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x30
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x13
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y2))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x31
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x15
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y3))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x32
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x17
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x33
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x19
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y1))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x34
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x21
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y2))
+                                                                                                                                                                                                                                                 (GHC.Prim.int2Float#
+                                                                                                                                                                                                                                                    (GHC.Prim.+#
+                                                                                                                                                                                                                                                       (GHC.Prim.+#
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             wild1
+                                                                                                                                                                                                                                                             12#)
+                                                                                                                                                                                                                                                          (GHC.Prim.*#
+                                                                                                                                                                                                                                                             x23
+                                                                                                                                                                                                                                                             4#))
+                                                                                                                                                                                                                                                       y3)))
+                                                                                                                                                                                                                                              `cast` <Co:2>
+                                                                                                                                                                                                                                              }
+                                                                                                                                                                                                                                          } } in
+                                                                                                                                                                                                                                    case $dKnownNat1
+                                                                                                                                                                                                                                    of {
+                                                                                                                                                                                                                                      GHC.Natural.NatS# w ->
+                                                                                                                                                                                                                                        case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                                               (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                                                                                                  w)
+                                                                                                                                                                                                                                        of wild1
+                                                                                                                                                                                                                                        { __DEFAULT ->
+                                                                                                                                                                                                                                        jump $j37
+                                                                                                                                                                                                                                          wild1
+                                                                                                                                                                                                                                        };
+                                                                                                                                                                                                                                      GHC.Natural.NatJ# dt ->
+                                                                                                                                                                                                                                        case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                                               (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                                                                                                  dt)
+                                                                                                                                                                                                                                        of wild1
+                                                                                                                                                                                                                                        { __DEFAULT ->
+                                                                                                                                                                                                                                        jump $j37
+                                                                                                                                                                                                                                          wild1
+                                                                                                                                                                                                                                        }
+                                                                                                                                                                                                                                    } } in
+                                                                                                                                                                                                                              case $dKnownNat1
+                                                                                                                                                                                                                              of {
+                                                                                                                                                                                                                                GHC.Natural.NatS# w ->
+                                                                                                                                                                                                                                  case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                                         (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                                                                                            w)
+                                                                                                                                                                                                                                  of wild1
+                                                                                                                                                                                                                                  { __DEFAULT ->
+                                                                                                                                                                                                                                  jump $j36
+                                                                                                                                                                                                                                    wild1
+                                                                                                                                                                                                                                  };
+                                                                                                                                                                                                                                GHC.Natural.NatJ# dt ->
+                                                                                                                                                                                                                                  case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                                         (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                                                                                            dt)
+                                                                                                                                                                                                                                  of wild1
+                                                                                                                                                                                                                                  { __DEFAULT ->
+                                                                                                                                                                                                                                  jump $j36
+                                                                                                                                                                                                                                    wild1
+                                                                                                                                                                                                                                  }
+                                                                                                                                                                                                                              } } in
+                                                                                                                                                                                                                        case $dKnownNat1
+                                                                                                                                                                                                                        of {
+                                                                                                                                                                                                                          GHC.Natural.NatS# w ->
+                                                                                                                                                                                                                            case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                                   (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                                                                                      w)
+                                                                                                                                                                                                                            of wild1
+                                                                                                                                                                                                                            { __DEFAULT ->
+                                                                                                                                                                                                                            jump $j35
+                                                                                                                                                                                                                              wild1
+                                                                                                                                                                                                                            };
+                                                                                                                                                                                                                          GHC.Natural.NatJ# dt ->
+                                                                                                                                                                                                                            case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                                   (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                                                                                      dt)
+                                                                                                                                                                                                                            of wild1
+                                                                                                                                                                                                                            { __DEFAULT ->
+                                                                                                                                                                                                                            jump $j35
+                                                                                                                                                                                                                              wild1
+                                                                                                                                                                                                                            }
+                                                                                                                                                                                                                        } } in
+                                                                                                                                                                                                                  case $dKnownNat1
+                                                                                                                                                                                                                  of {
+                                                                                                                                                                                                                    GHC.Natural.NatS# w ->
+                                                                                                                                                                                                                      case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                             (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                                                                                w)
+                                                                                                                                                                                                                      of wild1
+                                                                                                                                                                                                                      { __DEFAULT ->
+                                                                                                                                                                                                                      jump $j34
+                                                                                                                                                                                                                        wild1
+                                                                                                                                                                                                                      };
+                                                                                                                                                                                                                    GHC.Natural.NatJ# dt ->
+                                                                                                                                                                                                                      case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                             (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                                                                                dt)
+                                                                                                                                                                                                                      of wild1
+                                                                                                                                                                                                                      { __DEFAULT ->
+                                                                                                                                                                                                                      jump $j34
+                                                                                                                                                                                                                        wild1
+                                                                                                                                                                                                                      }
+                                                                                                                                                                                                                  } } in
+                                                                                                                                                                                                            case $dKnownNat1
+                                                                                                                                                                                                            of {
+                                                                                                                                                                                                              GHC.Natural.NatS# w ->
+                                                                                                                                                                                                                case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                       (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                                                                          w)
+                                                                                                                                                                                                                of wild1
+                                                                                                                                                                                                                { __DEFAULT ->
+                                                                                                                                                                                                                jump $j33
+                                                                                                                                                                                                                  wild1
+                                                                                                                                                                                                                };
+                                                                                                                                                                                                              GHC.Natural.NatJ# dt ->
+                                                                                                                                                                                                                case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                       (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                                                                          dt)
+                                                                                                                                                                                                                of wild1
+                                                                                                                                                                                                                { __DEFAULT ->
+                                                                                                                                                                                                                jump $j33
+                                                                                                                                                                                                                  wild1
+                                                                                                                                                                                                                }
+                                                                                                                                                                                                            } } in
+                                                                                                                                                                                                      case $dKnownNat1
+                                                                                                                                                                                                      of {
+                                                                                                                                                                                                        GHC.Natural.NatS# w ->
+                                                                                                                                                                                                          case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                                                                    w)
+                                                                                                                                                                                                          of wild1
+                                                                                                                                                                                                          { __DEFAULT ->
+                                                                                                                                                                                                          jump $j32
+                                                                                                                                                                                                            wild1
+                                                                                                                                                                                                          };
+                                                                                                                                                                                                        GHC.Natural.NatJ# dt ->
+                                                                                                                                                                                                          case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                                                                    dt)
+                                                                                                                                                                                                          of wild1
+                                                                                                                                                                                                          { __DEFAULT ->
+                                                                                                                                                                                                          jump $j32
+                                                                                                                                                                                                            wild1
+                                                                                                                                                                                                          }
+                                                                                                                                                                                                      } } in
+                                                                                                                                                                                                case $dKnownNat1
+                                                                                                                                                                                                of {
+                                                                                                                                                                                                  GHC.Natural.NatS# w ->
+                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                                                              w)
+                                                                                                                                                                                                    of wild1
+                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                    jump $j31
+                                                                                                                                                                                                      wild1
+                                                                                                                                                                                                    };
+                                                                                                                                                                                                  GHC.Natural.NatJ# dt ->
+                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                                                              dt)
+                                                                                                                                                                                                    of wild1
+                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                    jump $j31
+                                                                                                                                                                                                      wild1
+                                                                                                                                                                                                    }
+                                                                                                                                                                                                } } in
+                                                                                                                                                                                          case $dKnownNat1
+                                                                                                                                                                                          of {
+                                                                                                                                                                                            GHC.Natural.NatS# w ->
+                                                                                                                                                                                              case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                     (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                                                        w)
+                                                                                                                                                                                              of wild1
+                                                                                                                                                                                              { __DEFAULT ->
+                                                                                                                                                                                              jump $j30
+                                                                                                                                                                                                wild1
+                                                                                                                                                                                              };
+                                                                                                                                                                                            GHC.Natural.NatJ# dt ->
+                                                                                                                                                                                              case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                                     (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                                                        dt)
+                                                                                                                                                                                              of wild1
+                                                                                                                                                                                              { __DEFAULT ->
+                                                                                                                                                                                              jump $j30
+                                                                                                                                                                                                wild1
+                                                                                                                                                                                              }
+                                                                                                                                                                                          } } in
+                                                                                                                                                                                    case $dKnownNat1
+                                                                                                                                                                                    of {
+                                                                                                                                                                                      GHC.Natural.NatS# w ->
+                                                                                                                                                                                        case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                               (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                                                  w)
+                                                                                                                                                                                        of wild1
+                                                                                                                                                                                        { __DEFAULT ->
+                                                                                                                                                                                        jump $j29
+                                                                                                                                                                                          wild1
+                                                                                                                                                                                        };
+                                                                                                                                                                                      GHC.Natural.NatJ# dt ->
+                                                                                                                                                                                        case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                               (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                                                  dt)
+                                                                                                                                                                                        of wild1
+                                                                                                                                                                                        { __DEFAULT ->
+                                                                                                                                                                                        jump $j29
+                                                                                                                                                                                          wild1
+                                                                                                                                                                                        }
+                                                                                                                                                                                    } } in
+                                                                                                                                                                              case $dKnownNat1
+                                                                                                                                                                              of {
+                                                                                                                                                                                GHC.Natural.NatS# w ->
+                                                                                                                                                                                  case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                         (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                                            w)
+                                                                                                                                                                                  of wild1
+                                                                                                                                                                                  { __DEFAULT ->
+                                                                                                                                                                                  jump $j28
+                                                                                                                                                                                    wild1
+                                                                                                                                                                                  };
+                                                                                                                                                                                GHC.Natural.NatJ# dt ->
+                                                                                                                                                                                  case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                         (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                                            dt)
+                                                                                                                                                                                  of wild1
+                                                                                                                                                                                  { __DEFAULT ->
+                                                                                                                                                                                  jump $j28
+                                                                                                                                                                                    wild1
+                                                                                                                                                                                  }
+                                                                                                                                                                              } } in
+                                                                                                                                                                        case $dKnownNat1
+                                                                                                                                                                        of {
+                                                                                                                                                                          GHC.Natural.NatS# w ->
+                                                                                                                                                                            case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                   (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                                      w)
+                                                                                                                                                                            of wild1
+                                                                                                                                                                            { __DEFAULT ->
+                                                                                                                                                                            jump $j27
+                                                                                                                                                                              wild1
+                                                                                                                                                                            };
+                                                                                                                                                                          GHC.Natural.NatJ# dt ->
+                                                                                                                                                                            case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                                   (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                                      dt)
+                                                                                                                                                                            of wild1
+                                                                                                                                                                            { __DEFAULT ->
+                                                                                                                                                                            jump $j27
+                                                                                                                                                                              wild1
+                                                                                                                                                                            }
+                                                                                                                                                                        } } in
+                                                                                                                                                                  case $dKnownNat
+                                                                                                                                                                  of {
+                                                                                                                                                                    GHC.Natural.NatS# w ->
+                                                                                                                                                                      case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                             (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                                w)
+                                                                                                                                                                      of wild1
+                                                                                                                                                                      { __DEFAULT ->
+                                                                                                                                                                      jump $j26
+                                                                                                                                                                        wild1
+                                                                                                                                                                      };
+                                                                                                                                                                    GHC.Natural.NatJ# dt ->
+                                                                                                                                                                      case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                             (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                                dt)
+                                                                                                                                                                      of wild1
+                                                                                                                                                                      { __DEFAULT ->
+                                                                                                                                                                      jump $j26
+                                                                                                                                                                        wild1
+                                                                                                                                                                      }
+                                                                                                                                                                  } } in
+                                                                                                                                                            case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2
+                                                                                                                                                            of {
+                                                                                                                                                              GHC.Natural.NatS# w ->
+                                                                                                                                                                case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                       (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                          w)
+                                                                                                                                                                of wild1
+                                                                                                                                                                { __DEFAULT ->
+                                                                                                                                                                jump $j25
+                                                                                                                                                                  wild1
+                                                                                                                                                                };
+                                                                                                                                                              GHC.Natural.NatJ# dt ->
+                                                                                                                                                                case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                       (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                          dt)
+                                                                                                                                                                of wild1
+                                                                                                                                                                { __DEFAULT ->
+                                                                                                                                                                jump $j25
+                                                                                                                                                                  wild1
+                                                                                                                                                                }
+                                                                                                                                                            } } in
+                                                                                                                                                      case $dKnownNat
+                                                                                                                                                      of {
+                                                                                                                                                        GHC.Natural.NatS# w ->
+                                                                                                                                                          case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                                    w)
+                                                                                                                                                          of wild1
+                                                                                                                                                          { __DEFAULT ->
+                                                                                                                                                          jump $j24
+                                                                                                                                                            wild1
+                                                                                                                                                          };
+                                                                                                                                                        GHC.Natural.NatJ# dt ->
+                                                                                                                                                          case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                                    dt)
+                                                                                                                                                          of wild1
+                                                                                                                                                          { __DEFAULT ->
+                                                                                                                                                          jump $j24
+                                                                                                                                                            wild1
+                                                                                                                                                          }
+                                                                                                                                                      } } in
+                                                                                                                                                case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2
+                                                                                                                                                of {
+                                                                                                                                                  GHC.Natural.NatS# w ->
+                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                              w)
+                                                                                                                                                    of wild1
+                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                    jump $j23
+                                                                                                                                                      wild1
+                                                                                                                                                    };
+                                                                                                                                                  GHC.Natural.NatJ# dt ->
+                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                              dt)
+                                                                                                                                                    of wild1
+                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                    jump $j23
+                                                                                                                                                      wild1
+                                                                                                                                                    }
+                                                                                                                                                } } in
+                                                                                                                                          case $dKnownNat
+                                                                                                                                          of {
+                                                                                                                                            GHC.Natural.NatS# w ->
+                                                                                                                                              case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                     (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                        w)
+                                                                                                                                              of wild1
+                                                                                                                                              { __DEFAULT ->
+                                                                                                                                              jump $j22
+                                                                                                                                                wild1
+                                                                                                                                              };
+                                                                                                                                            GHC.Natural.NatJ# dt ->
+                                                                                                                                              case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                                     (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                        dt)
+                                                                                                                                              of wild1
+                                                                                                                                              { __DEFAULT ->
+                                                                                                                                              jump $j22
+                                                                                                                                                wild1
+                                                                                                                                              }
+                                                                                                                                          } } in
+                                                                                                                                    case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2
+                                                                                                                                    of {
+                                                                                                                                      GHC.Natural.NatS# w ->
+                                                                                                                                        case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                               (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                                  w)
+                                                                                                                                        of wild1
+                                                                                                                                        { __DEFAULT ->
+                                                                                                                                        jump $j21
+                                                                                                                                          wild1
+                                                                                                                                        };
+                                                                                                                                      GHC.Natural.NatJ# dt ->
+                                                                                                                                        case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                               (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                                  dt)
+                                                                                                                                        of wild1
+                                                                                                                                        { __DEFAULT ->
+                                                                                                                                        jump $j21
+                                                                                                                                          wild1
+                                                                                                                                        }
+                                                                                                                                    } } in
+                                                                                                                              case $dKnownNat
+                                                                                                                              of {
+                                                                                                                                GHC.Natural.NatS# w ->
+                                                                                                                                  case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                         (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                            w)
+                                                                                                                                  of wild1
+                                                                                                                                  { __DEFAULT ->
+                                                                                                                                  jump $j20
+                                                                                                                                    wild1
+                                                                                                                                  };
+                                                                                                                                GHC.Natural.NatJ# dt ->
+                                                                                                                                  case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                         (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                            dt)
+                                                                                                                                  of wild1
+                                                                                                                                  { __DEFAULT ->
+                                                                                                                                  jump $j20
+                                                                                                                                    wild1
+                                                                                                                                  }
+                                                                                                                              } } in
+                                                                                                                        case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2
+                                                                                                                        of {
+                                                                                                                          GHC.Natural.NatS# w ->
+                                                                                                                            case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                   (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                      w)
+                                                                                                                            of wild1
+                                                                                                                            { __DEFAULT ->
+                                                                                                                            jump $j19
+                                                                                                                              wild1
+                                                                                                                            };
+                                                                                                                          GHC.Natural.NatJ# dt ->
+                                                                                                                            case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                                   (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                      dt)
+                                                                                                                            of wild1
+                                                                                                                            { __DEFAULT ->
+                                                                                                                            jump $j19
+                                                                                                                              wild1
+                                                                                                                            }
+                                                                                                                        } } in
+                                                                                                                  case $dKnownNat1
+                                                                                                                  of {
+                                                                                                                    GHC.Natural.NatS# w ->
+                                                                                                                      case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                             (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                                w)
+                                                                                                                      of wild1
+                                                                                                                      { __DEFAULT ->
+                                                                                                                      jump $j18
+                                                                                                                        wild1
+                                                                                                                      };
+                                                                                                                    GHC.Natural.NatJ# dt ->
+                                                                                                                      case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                             (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                                dt)
+                                                                                                                      of wild1
+                                                                                                                      { __DEFAULT ->
+                                                                                                                      jump $j18
+                                                                                                                        wild1
+                                                                                                                      }
+                                                                                                                  } } in
+                                                                                                            case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2
+                                                                                                            of {
+                                                                                                              GHC.Natural.NatS# w ->
+                                                                                                                case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                       (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                          w)
+                                                                                                                of wild1
+                                                                                                                { __DEFAULT ->
+                                                                                                                jump $j17
+                                                                                                                  wild1
+                                                                                                                };
+                                                                                                              GHC.Natural.NatJ# dt ->
+                                                                                                                case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                       (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                          dt)
+                                                                                                                of wild1
+                                                                                                                { __DEFAULT ->
+                                                                                                                jump $j17
+                                                                                                                  wild1
+                                                                                                                }
+                                                                                                            } } in
+                                                                                                      case $dKnownNat1
+                                                                                                      of {
+                                                                                                        GHC.Natural.NatS# w ->
+                                                                                                          case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                                    w)
+                                                                                                          of wild1
+                                                                                                          { __DEFAULT ->
+                                                                                                          jump $j16
+                                                                                                            wild1
+                                                                                                          };
+                                                                                                        GHC.Natural.NatJ# dt ->
+                                                                                                          case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                                    dt)
+                                                                                                          of wild1
+                                                                                                          { __DEFAULT ->
+                                                                                                          jump $j16
+                                                                                                            wild1
+                                                                                                          }
+                                                                                                      } } in
+                                                                                                case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2
+                                                                                                of {
+                                                                                                  GHC.Natural.NatS# w ->
+                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                              w)
+                                                                                                    of wild1
+                                                                                                    { __DEFAULT ->
+                                                                                                    jump $j15
+                                                                                                      wild1
+                                                                                                    };
+                                                                                                  GHC.Natural.NatJ# dt ->
+                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                              dt)
+                                                                                                    of wild1
+                                                                                                    { __DEFAULT ->
+                                                                                                    jump $j15
+                                                                                                      wild1
+                                                                                                    }
+                                                                                                } } in
+                                                                                          case $dKnownNat1
+                                                                                          of {
+                                                                                            GHC.Natural.NatS# w ->
+                                                                                              case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                     (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                        w)
+                                                                                              of wild1
+                                                                                              { __DEFAULT ->
+                                                                                              jump $j14
+                                                                                                wild1
+                                                                                              };
+                                                                                            GHC.Natural.NatJ# dt ->
+                                                                                              case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                                     (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                        dt)
+                                                                                              of wild1
+                                                                                              { __DEFAULT ->
+                                                                                              jump $j14
+                                                                                                wild1
+                                                                                              }
+                                                                                          } } in
+                                                                                    case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2
+                                                                                    of {
+                                                                                      GHC.Natural.NatS# w ->
+                                                                                        case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                               (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                                  w)
+                                                                                        of wild1
+                                                                                        { __DEFAULT ->
+                                                                                        jump $j13
+                                                                                          wild1
+                                                                                        };
+                                                                                      GHC.Natural.NatJ# dt ->
+                                                                                        case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                               (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                                  dt)
+                                                                                        of wild1
+                                                                                        { __DEFAULT ->
+                                                                                        jump $j13
+                                                                                          wild1
+                                                                                        }
+                                                                                    } } in
+                                                                              case $dKnownNat1 of {
+                                                                                GHC.Natural.NatS# w ->
+                                                                                  case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                         (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                            w)
+                                                                                  of wild1
+                                                                                  { __DEFAULT ->
+                                                                                  jump $j12 wild1
+                                                                                  };
+                                                                                GHC.Natural.NatJ# dt ->
+                                                                                  case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                         (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                            dt)
+                                                                                  of wild1
+                                                                                  { __DEFAULT ->
+                                                                                  jump $j12 wild1
+                                                                                  }
+                                                                              } } in
+                                                                        case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2
+                                                                        of {
+                                                                          GHC.Natural.NatS# w ->
+                                                                            case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                   (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                      w)
+                                                                            of wild1
+                                                                            { __DEFAULT ->
+                                                                            jump $j11 wild1
+                                                                            };
+                                                                          GHC.Natural.NatJ# dt ->
+                                                                            case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                   (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                                      dt)
+                                                                            of wild1
+                                                                            { __DEFAULT ->
+                                                                            jump $j11 wild1
+                                                                            }
+                                                                        } } in
+                                                                  case lvl2 of wild {
+                                                                    integer-gmp-1.0.1.0:GHC.Integer.Type.S# i# ->
+                                                                      case GHC.Prim.tagToEnum#
+                                                                             @ Bool
+                                                                             (GHC.Prim.>=# i# 0#)
+                                                                      of {
+                                                                        False ->
+                                                                          case GHC.Natural.underflowError
+                                                                          of wild2 {
+                                                                          };
+                                                                        True ->
+                                                                          case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                    (GHC.Prim.int2Word#
+                                                                                       i#))
+                                                                          of wild2
+                                                                          { __DEFAULT ->
+                                                                          jump $j10 wild2
+                                                                          }
+                                                                      };
+                                                                    integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt ->
+                                                                      case GHC.Prim.uncheckedIShiftRL#
+                                                                             (GHC.Prim.sizeofByteArray#
+                                                                                dt)
+                                                                             3#
+                                                                      of {
+                                                                        __DEFAULT ->
+                                                                          case GHC.Prim.sizeofByteArray#
+                                                                                 dt
+                                                                          of {
+                                                                            __DEFAULT ->
+                                                                              case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                     wild
+                                                                              of wild4
+                                                                              { __DEFAULT ->
+                                                                              jump $j10 wild4
+                                                                              };
+                                                                            0# ->
+                                                                              case GHC.Natural.underflowError
+                                                                              of wild4 {
+                                                                              }
+                                                                          };
+                                                                        1# ->
+                                                                          case GHC.Prim.indexWordArray#
+                                                                                 dt 0#
+                                                                          of wild2
+                                                                          { __DEFAULT ->
+                                                                          case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                                    wild2)
+                                                                          of wild4
+                                                                          { __DEFAULT ->
+                                                                          jump $j10 wild4
+                                                                          }
+                                                                          }
+                                                                      };
+                                                                    integer-gmp-1.0.1.0:GHC.Integer.Type.Jn# ipv ->
+                                                                      case GHC.Natural.underflowError
+                                                                      of wild1 {
+                                                                      }
+                                                                  } } in
+                                                            case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2
+                                                            of {
+                                                              GHC.Natural.NatS# w ->
+                                                                case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                       (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                          w)
+                                                                of wild1
+                                                                { __DEFAULT ->
+                                                                jump $j9 wild1
+                                                                };
+                                                              GHC.Natural.NatJ# dt ->
+                                                                case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                       (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                          dt)
+                                                                of wild1
+                                                                { __DEFAULT ->
+                                                                jump $j9 wild1
+                                                                }
+                                                            } } in
+                                                      case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2
+                                                      of {
+                                                        GHC.Natural.NatS# w ->
+                                                          case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                                    w)
+                                                          of wild1
+                                                          { __DEFAULT ->
+                                                          jump $j8 wild1
+                                                          };
+                                                        GHC.Natural.NatJ# dt ->
+                                                          case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                                    dt)
+                                                          of wild1
+                                                          { __DEFAULT ->
+                                                          jump $j8 wild1
+                                                          }
+                                                      } } in
+                                                case $dKnownNat of {
+                                                  GHC.Natural.NatS# w ->
+                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                              w)
+                                                    of wild1
+                                                    { __DEFAULT ->
+                                                    jump $j7 wild1
+                                                    };
+                                                  GHC.Natural.NatJ# dt ->
+                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp#
+                                                              dt)
+                                                    of wild1
+                                                    { __DEFAULT ->
+                                                    jump $j7 wild1
+                                                    }
+                                                } } in
+                                          case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2
+                                          of {
+                                            GHC.Natural.NatS# w ->
+                                              case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                     (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                        w)
+                                              of wild1
+                                              { __DEFAULT ->
+                                              jump $j6 wild1
+                                              };
+                                            GHC.Natural.NatJ# dt ->
+                                              case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                                     (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt)
+                                              of wild1
+                                              { __DEFAULT ->
+                                              jump $j6 wild1
+                                              }
+                                          } } in
+                                    case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2 of {
+                                      GHC.Natural.NatS# w ->
+                                        case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                               (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger
+                                                  w)
+                                        of wild1
+                                        { __DEFAULT ->
+                                        jump $j5 wild1
+                                        };
+                                      GHC.Natural.NatJ# dt ->
+                                        case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                               (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt)
+                                        of wild1
+                                        { __DEFAULT ->
+                                        jump $j5 wild1
+                                        }
+                                    } } in
+                              case $dKnownNat1 of {
+                                GHC.Natural.NatS# w ->
+                                  case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                         (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger w)
+                                  of wild1
+                                  { __DEFAULT ->
+                                  jump $j4 wild1
+                                  };
+                                GHC.Natural.NatJ# dt ->
+                                  case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                         (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt)
+                                  of wild1
+                                  { __DEFAULT ->
+                                  jump $j4 wild1
+                                  }
+                              } } in
+                        case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2 of {
+                          GHC.Natural.NatS# w ->
+                            case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                   (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger w)
+                            of wild1
+                            { __DEFAULT ->
+                            jump $j3 wild1
+                            };
+                          GHC.Natural.NatJ# dt ->
+                            case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                                   (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt)
+                            of wild1
+                            { __DEFAULT ->
+                            jump $j3 wild1
+                            }
+                        } } in
+                  case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2 of {
+                    GHC.Natural.NatS# w ->
+                      case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                             (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger w)
+                      of wild1
+                      { __DEFAULT ->
+                      jump $j2 wild1
+                      };
+                    GHC.Natural.NatJ# dt ->
+                      case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                             (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt)
+                      of wild1
+                      { __DEFAULT ->
+                      jump $j2 wild1
+                      }
+                  } } in
+            case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2 of {
+              GHC.Natural.NatS# w ->
+                case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                       (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger w)
+                of wild1
+                { __DEFAULT ->
+                jump $j1 wild1
+                };
+              GHC.Natural.NatJ# dt ->
+                case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                       (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt)
+                of wild1
+                { __DEFAULT ->
+                jump $j1 wild1
+                }
+            } } in
+      case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2 of {
+        GHC.Natural.NatS# w ->
+          case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                 (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger w)
+          of wild1
+          { __DEFAULT ->
+          jump $j wild1
+          };
+        GHC.Natural.NatJ# dt ->
+          case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+                 (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt)
+          of wild1
+          { __DEFAULT ->
+          jump $j wild1
+          }
+      }
+
+-- RHS size: {terms: 18, types: 5, coercions: 0, joins: 0/0}
+generateKnownNats_ :: Tensor '[2, 3, 4] Float
+generateKnownNats_
+  = case CoreDump.Tensor.GenerateKnownNats.generateKnownNats_2 of {
+      GHC.Natural.NatS# w ->
+        case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+               (integer-gmp-1.0.1.0:GHC.Integer.Type.wordToInteger w)
+        of wild1
+        { __DEFAULT ->
+        CoreDump.Tensor.GenerateKnownNats.generateKnownNats_1 wild1
+        };
+      GHC.Natural.NatJ# dt ->
+        case integer-gmp-1.0.1.0:GHC.Integer.Type.integerToInt
+               (integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt)
+        of wild1
+        { __DEFAULT ->
+        CoreDump.Tensor.GenerateKnownNats.generateKnownNats_1 wild1
+        }
+    }
+
+
+ tests/CoreDump/Tensor/GenerateKnownNats.hs view
@@ -0,0 +1,20 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+{-# LANGUAGE ScopedTypeVariables   #-}
+
+module CoreDump.Tensor.GenerateKnownNats where
+
+import Data.Kind
+import Data.Singletons
+import Data.Tensor.Static
+import GHC.TypeLits
+import TensorInstances ()
+import Type.List
+
+-- FIXME: Generates terrible Core possibly because of https://ghc.haskell.org/trac/ghc/ticket/14170
+generateKnownNats_ :: Tensor '[2, 3, 4] Float
+generateKnownNats_ =
+    generate @'[2, 3, 4] @Float @([Nat] -> Constraint) @KnownNats $ \(_ :: Proxy index) ->
+        case natsVal @index of
+            [i, j, k] -> fromIntegral $ i * 12 + j * 4 + k
+            _         -> undefined
+ tests/CoreDump/Tensor/GenerateSing.dump-simpl.ghc821.golden view
@@ -0,0 +1,2341 @@+
+==================== Tidy Core ====================
+2017-09-15 00:00:05.9794125 UTC
+
+Result size of Tidy Core
+  = {terms: 1,482, types: 4,058, coercions: 7,986, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateSing.$s$WSNat2 :: Integer
+CoreDump.Tensor.GenerateSing.$s$WSNat2 = 0
+
+-- RHS size: {terms: 39, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateSing.$s$WSNat1 :: GHC.Natural.Natural
+CoreDump.Tensor.GenerateSing.$s$WSNat1
+  = case CoreDump.Tensor.GenerateSing.$s$WSNat2 of {
+      integer-gmp-1.0.1.0:GHC.Integer.Type.S# i# ->
+        case GHC.Prim.tagToEnum# @ Bool (GHC.Prim.>=# i# 0#) of {
+          False -> GHC.Natural.underflowError @ GHC.Natural.Natural;
+          True -> GHC.Natural.NatS# (GHC.Prim.int2Word# i#)
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt ->
+        case GHC.Prim.uncheckedIShiftRL# (GHC.Prim.sizeofByteArray# dt) 3#
+        of {
+          __DEFAULT ->
+            case GHC.Prim.sizeofByteArray# dt of {
+              __DEFAULT -> GHC.Natural.NatJ# dt;
+              0# -> GHC.Natural.underflowError @ GHC.Natural.Natural
+            };
+          1# ->
+            case GHC.Prim.indexWordArray# dt 0# of wild2 { __DEFAULT ->
+            GHC.Natural.NatS# wild2
+            }
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jn# ipv ->
+        GHC.Natural.underflowError @ GHC.Natural.Natural
+    }
+
+-- RHS size: {terms: 2, types: 1, coercions: 7, joins: 0/0}
+$s$WSNat12
+  :: singletons-2.3.1:Data.Singletons.TypeLits.Internal.R:SingNatn 0
+$s$WSNat12
+  = singletons-2.3.1:Data.Singletons.TypeLits.Internal.SNat
+      @ 0 (CoreDump.Tensor.GenerateSing.$s$WSNat1 `cast` <Co:7>)
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateSing.$s$WSNat5 :: Integer
+CoreDump.Tensor.GenerateSing.$s$WSNat5 = 3
+
+-- RHS size: {terms: 39, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateSing.$s$WSNat4 :: GHC.Natural.Natural
+CoreDump.Tensor.GenerateSing.$s$WSNat4
+  = case CoreDump.Tensor.GenerateSing.$s$WSNat5 of {
+      integer-gmp-1.0.1.0:GHC.Integer.Type.S# i# ->
+        case GHC.Prim.tagToEnum# @ Bool (GHC.Prim.>=# i# 0#) of {
+          False -> GHC.Natural.underflowError @ GHC.Natural.Natural;
+          True -> GHC.Natural.NatS# (GHC.Prim.int2Word# i#)
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt ->
+        case GHC.Prim.uncheckedIShiftRL# (GHC.Prim.sizeofByteArray# dt) 3#
+        of {
+          __DEFAULT ->
+            case GHC.Prim.sizeofByteArray# dt of {
+              __DEFAULT -> GHC.Natural.NatJ# dt;
+              0# -> GHC.Natural.underflowError @ GHC.Natural.Natural
+            };
+          1# ->
+            case GHC.Prim.indexWordArray# dt 0# of wild2 { __DEFAULT ->
+            GHC.Natural.NatS# wild2
+            }
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jn# ipv ->
+        GHC.Natural.underflowError @ GHC.Natural.Natural
+    }
+
+-- RHS size: {terms: 2, types: 1, coercions: 7, joins: 0/0}
+$s$WSNat13
+  :: singletons-2.3.1:Data.Singletons.TypeLits.Internal.R:SingNatn 3
+$s$WSNat13
+  = singletons-2.3.1:Data.Singletons.TypeLits.Internal.SNat
+      @ 3 (CoreDump.Tensor.GenerateSing.$s$WSNat4 `cast` <Co:7>)
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateSing.$s$WSNat8 :: Integer
+CoreDump.Tensor.GenerateSing.$s$WSNat8 = 2
+
+-- RHS size: {terms: 39, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateSing.$s$WSNat7 :: GHC.Natural.Natural
+CoreDump.Tensor.GenerateSing.$s$WSNat7
+  = case CoreDump.Tensor.GenerateSing.$s$WSNat8 of {
+      integer-gmp-1.0.1.0:GHC.Integer.Type.S# i# ->
+        case GHC.Prim.tagToEnum# @ Bool (GHC.Prim.>=# i# 0#) of {
+          False -> GHC.Natural.underflowError @ GHC.Natural.Natural;
+          True -> GHC.Natural.NatS# (GHC.Prim.int2Word# i#)
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt ->
+        case GHC.Prim.uncheckedIShiftRL# (GHC.Prim.sizeofByteArray# dt) 3#
+        of {
+          __DEFAULT ->
+            case GHC.Prim.sizeofByteArray# dt of {
+              __DEFAULT -> GHC.Natural.NatJ# dt;
+              0# -> GHC.Natural.underflowError @ GHC.Natural.Natural
+            };
+          1# ->
+            case GHC.Prim.indexWordArray# dt 0# of wild2 { __DEFAULT ->
+            GHC.Natural.NatS# wild2
+            }
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jn# ipv ->
+        GHC.Natural.underflowError @ GHC.Natural.Natural
+    }
+
+-- RHS size: {terms: 2, types: 1, coercions: 7, joins: 0/0}
+$s$WSNat14
+  :: singletons-2.3.1:Data.Singletons.TypeLits.Internal.R:SingNatn 2
+$s$WSNat14
+  = singletons-2.3.1:Data.Singletons.TypeLits.Internal.SNat
+      @ 2 (CoreDump.Tensor.GenerateSing.$s$WSNat7 `cast` <Co:7>)
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateSing.$s$WSNat11 :: Integer
+CoreDump.Tensor.GenerateSing.$s$WSNat11 = 1
+
+-- RHS size: {terms: 39, types: 12, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateSing.$s$WSNat10 :: GHC.Natural.Natural
+CoreDump.Tensor.GenerateSing.$s$WSNat10
+  = case CoreDump.Tensor.GenerateSing.$s$WSNat11 of {
+      integer-gmp-1.0.1.0:GHC.Integer.Type.S# i# ->
+        case GHC.Prim.tagToEnum# @ Bool (GHC.Prim.>=# i# 0#) of {
+          False -> GHC.Natural.underflowError @ GHC.Natural.Natural;
+          True -> GHC.Natural.NatS# (GHC.Prim.int2Word# i#)
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jp# dt ->
+        case GHC.Prim.uncheckedIShiftRL# (GHC.Prim.sizeofByteArray# dt) 3#
+        of {
+          __DEFAULT ->
+            case GHC.Prim.sizeofByteArray# dt of {
+              __DEFAULT -> GHC.Natural.NatJ# dt;
+              0# -> GHC.Natural.underflowError @ GHC.Natural.Natural
+            };
+          1# ->
+            case GHC.Prim.indexWordArray# dt 0# of wild2 { __DEFAULT ->
+            GHC.Natural.NatS# wild2
+            }
+        };
+      integer-gmp-1.0.1.0:GHC.Integer.Type.Jn# ipv ->
+        GHC.Natural.underflowError @ GHC.Natural.Natural
+    }
+
+-- RHS size: {terms: 2, types: 1, coercions: 7, joins: 0/0}
+$s$WSNat15
+  :: singletons-2.3.1:Data.Singletons.TypeLits.Internal.R:SingNatn 1
+$s$WSNat15
+  = singletons-2.3.1:Data.Singletons.TypeLits.Internal.SNat
+      @ 1 (CoreDump.Tensor.GenerateSing.$s$WSNat10 `cast` <Co:7>)
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateSing.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.GenerateSing.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateSing.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.GenerateSing.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.GenerateSing.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateSing.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.GenerateSing.$trModule2
+  = "CoreDump.Tensor.GenerateSing"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateSing.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.GenerateSing.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.GenerateSing.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GenerateSing.$trModule :: GHC.Types.Module
+CoreDump.Tensor.GenerateSing.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.GenerateSing.$trModule3
+      CoreDump.Tensor.GenerateSing.$trModule1
+
+-- RHS size: {terms: 1, types: 14, coercions: 5, joins: 0/0}
+$dSingI :: ('[0] :: [Nat]) ~~ ('[0] :: [Nat])
+$dSingI = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[0] @ '[0] @~ <Co:5>
+
+-- RHS size: {terms: 4, types: 10, coercions: 72, joins: 0/0}
+$dSingI1
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0]
+$dSingI1
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0]
+      @ 0
+      @ '[]
+      ($dSingI `cast` <Co:14>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ((singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingI[][]1
+          @ Nat)
+       `cast` <Co:55>)
+
+-- RHS size: {terms: 1, types: 20, coercions: 8, joins: 0/0}
+$dSingI2 :: ('[0, 0] :: [Nat]) ~~ ('[0, 0] :: [Nat])
+$dSingI2
+  = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[0, 0] @ '[0, 0] @~ <Co:8>
+
+-- RHS size: {terms: 4, types: 15, coercions: 123, joins: 0/0}
+$dSingI3
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 0]
+$dSingI3
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 0]
+      @ 0
+      @ '[0]
+      ($dSingI2 `cast` <Co:20>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI1 `cast` <Co:100>)
+
+-- RHS size: {terms: 1, types: 14, coercions: 5, joins: 0/0}
+$dSingI4 :: ('[3] :: [Nat]) ~~ ('[3] :: [Nat])
+$dSingI4 = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[3] @ '[3] @~ <Co:5>
+
+-- RHS size: {terms: 4, types: 10, coercions: 72, joins: 0/0}
+$dSingI5
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[3]
+$dSingI5
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[3]
+      @ 3
+      @ '[]
+      ($dSingI4 `cast` <Co:14>)
+      ($s$WSNat13 `cast` <Co:3>)
+      ((singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingI[][]1
+          @ Nat)
+       `cast` <Co:55>)
+
+-- RHS size: {terms: 1, types: 20, coercions: 8, joins: 0/0}
+$dSingI6 :: ('[0, 3] :: [Nat]) ~~ ('[0, 3] :: [Nat])
+$dSingI6
+  = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[0, 3] @ '[0, 3] @~ <Co:8>
+
+-- RHS size: {terms: 4, types: 15, coercions: 123, joins: 0/0}
+$dSingI7
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 3]
+$dSingI7
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 3]
+      @ 0
+      @ '[3]
+      ($dSingI6 `cast` <Co:20>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI5 `cast` <Co:100>)
+
+-- RHS size: {terms: 1, types: 14, coercions: 5, joins: 0/0}
+$dSingI8 :: ('[2] :: [Nat]) ~~ ('[2] :: [Nat])
+$dSingI8 = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[2] @ '[2] @~ <Co:5>
+
+-- RHS size: {terms: 4, types: 10, coercions: 72, joins: 0/0}
+$dSingI9
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[2]
+$dSingI9
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[2]
+      @ 2
+      @ '[]
+      ($dSingI8 `cast` <Co:14>)
+      ($s$WSNat14 `cast` <Co:3>)
+      ((singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingI[][]1
+          @ Nat)
+       `cast` <Co:55>)
+
+-- RHS size: {terms: 1, types: 20, coercions: 8, joins: 0/0}
+$dSingI10 :: ('[2, 2] :: [Nat]) ~~ ('[2, 2] :: [Nat])
+$dSingI10
+  = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[2, 2] @ '[2, 2] @~ <Co:8>
+
+-- RHS size: {terms: 4, types: 15, coercions: 123, joins: 0/0}
+$dSingI11
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[2, 2]
+$dSingI11
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[2, 2]
+      @ 2
+      @ '[2]
+      ($dSingI10 `cast` <Co:20>)
+      ($s$WSNat14 `cast` <Co:3>)
+      ($dSingI9 `cast` <Co:100>)
+
+-- RHS size: {terms: 1, types: 20, coercions: 8, joins: 0/0}
+$dSingI12 :: ('[0, 2] :: [Nat]) ~~ ('[0, 2] :: [Nat])
+$dSingI12
+  = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[0, 2] @ '[0, 2] @~ <Co:8>
+
+-- RHS size: {terms: 4, types: 15, coercions: 123, joins: 0/0}
+$dSingI13
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 2]
+$dSingI13
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 2]
+      @ 0
+      @ '[2]
+      ($dSingI12 `cast` <Co:20>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI9 `cast` <Co:100>)
+
+-- RHS size: {terms: 1, types: 20, coercions: 8, joins: 0/0}
+$dSingI14 :: ('[2, 0] :: [Nat]) ~~ ('[2, 0] :: [Nat])
+$dSingI14
+  = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[2, 0] @ '[2, 0] @~ <Co:8>
+
+-- RHS size: {terms: 4, types: 15, coercions: 123, joins: 0/0}
+$dSingI15
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[2, 0]
+$dSingI15
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[2, 0]
+      @ 2
+      @ '[0]
+      ($dSingI14 `cast` <Co:20>)
+      ($s$WSNat14 `cast` <Co:3>)
+      ($dSingI1 `cast` <Co:100>)
+
+-- RHS size: {terms: 1, types: 20, coercions: 8, joins: 0/0}
+$dSingI16 :: ('[2, 3] :: [Nat]) ~~ ('[2, 3] :: [Nat])
+$dSingI16
+  = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[2, 3] @ '[2, 3] @~ <Co:8>
+
+-- RHS size: {terms: 4, types: 15, coercions: 123, joins: 0/0}
+$dSingI17
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[2, 3]
+$dSingI17
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[2, 3]
+      @ 2
+      @ '[3]
+      ($dSingI16 `cast` <Co:20>)
+      ($s$WSNat14 `cast` <Co:3>)
+      ($dSingI5 `cast` <Co:100>)
+
+-- RHS size: {terms: 1, types: 14, coercions: 5, joins: 0/0}
+$dSingI18 :: ('[1] :: [Nat]) ~~ ('[1] :: [Nat])
+$dSingI18 = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[1] @ '[1] @~ <Co:5>
+
+-- RHS size: {terms: 4, types: 10, coercions: 72, joins: 0/0}
+$dSingI19
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1]
+$dSingI19
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1]
+      @ 1
+      @ '[]
+      ($dSingI18 `cast` <Co:14>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ((singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingI[][]1
+          @ Nat)
+       `cast` <Co:55>)
+
+-- RHS size: {terms: 1, types: 20, coercions: 8, joins: 0/0}
+$dSingI20 :: ('[2, 1] :: [Nat]) ~~ ('[2, 1] :: [Nat])
+$dSingI20
+  = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[2, 1] @ '[2, 1] @~ <Co:8>
+
+-- RHS size: {terms: 4, types: 15, coercions: 123, joins: 0/0}
+$dSingI21
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[2, 1]
+$dSingI21
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[2, 1]
+      @ 2
+      @ '[1]
+      ($dSingI20 `cast` <Co:20>)
+      ($s$WSNat14 `cast` <Co:3>)
+      ($dSingI19 `cast` <Co:100>)
+
+-- RHS size: {terms: 1, types: 20, coercions: 8, joins: 0/0}
+$dSingI22 :: ('[0, 1] :: [Nat]) ~~ ('[0, 1] :: [Nat])
+$dSingI22
+  = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[0, 1] @ '[0, 1] @~ <Co:8>
+
+-- RHS size: {terms: 4, types: 15, coercions: 123, joins: 0/0}
+$dSingI23
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 1]
+$dSingI23
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 1]
+      @ 0
+      @ '[1]
+      ($dSingI22 `cast` <Co:20>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI19 `cast` <Co:100>)
+
+-- RHS size: {terms: 1, types: 20, coercions: 8, joins: 0/0}
+$dSingI24 :: ('[1, 3] :: [Nat]) ~~ ('[1, 3] :: [Nat])
+$dSingI24
+  = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[1, 3] @ '[1, 3] @~ <Co:8>
+
+-- RHS size: {terms: 4, types: 15, coercions: 123, joins: 0/0}
+$dSingI25
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 3]
+$dSingI25
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 3]
+      @ 1
+      @ '[3]
+      ($dSingI24 `cast` <Co:20>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI5 `cast` <Co:100>)
+
+-- RHS size: {terms: 1, types: 20, coercions: 8, joins: 0/0}
+$dSingI26 :: ('[1, 2] :: [Nat]) ~~ ('[1, 2] :: [Nat])
+$dSingI26
+  = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[1, 2] @ '[1, 2] @~ <Co:8>
+
+-- RHS size: {terms: 4, types: 15, coercions: 123, joins: 0/0}
+$dSingI27
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 2]
+$dSingI27
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 2]
+      @ 1
+      @ '[2]
+      ($dSingI26 `cast` <Co:20>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI9 `cast` <Co:100>)
+
+-- RHS size: {terms: 1, types: 20, coercions: 8, joins: 0/0}
+$dSingI28 :: ('[1, 1] :: [Nat]) ~~ ('[1, 1] :: [Nat])
+$dSingI28
+  = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[1, 1] @ '[1, 1] @~ <Co:8>
+
+-- RHS size: {terms: 4, types: 15, coercions: 123, joins: 0/0}
+$dSingI29
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 1]
+$dSingI29
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 1]
+      @ 1
+      @ '[1]
+      ($dSingI28 `cast` <Co:20>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI19 `cast` <Co:100>)
+
+-- RHS size: {terms: 1, types: 20, coercions: 8, joins: 0/0}
+$dSingI30 :: ('[1, 0] :: [Nat]) ~~ ('[1, 0] :: [Nat])
+$dSingI30
+  = GHC.Types.Eq# @ [Nat] @ [Nat] @ '[1, 0] @ '[1, 0] @~ <Co:8>
+
+-- RHS size: {terms: 4, types: 15, coercions: 123, joins: 0/0}
+$dSingI31
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 0]
+$dSingI31
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 0]
+      @ 1
+      @ '[0]
+      ($dSingI30 `cast` <Co:20>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI1 `cast` <Co:100>)
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+loc :: [Char]
+loc
+  = GHC.CString.unpackCString#
+      CoreDump.Tensor.GenerateSing.$trModule4
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+loc1 :: [Char]
+loc1
+  = GHC.CString.unpackCString#
+      CoreDump.Tensor.GenerateSing.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+loc2 :: GHC.Prim.Addr#
+loc2 = "tests\\CoreDump\\Tensor\\GenerateSing.hs"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+loc3 :: [Char]
+loc3 = GHC.CString.unpackCString# loc2
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+loc4 :: Int
+loc4 = GHC.Types.I# 18#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+loc5 :: Int
+loc5 = GHC.Types.I# 26#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+loc6 :: Int
+loc6 = GHC.Types.I# 35#
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+$dIP :: GHC.Prim.Addr#
+$dIP = "undefined"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+$dIP1 :: [Char]
+$dIP1 = GHC.CString.unpackCString# $dIP
+
+-- RHS size: {terms: 8, types: 0, coercions: 0, joins: 0/0}
+$dIP2 :: GHC.Stack.Types.SrcLoc
+$dIP2 = GHC.Stack.Types.SrcLoc loc loc1 loc3 loc4 loc5 loc4 loc6
+
+-- RHS size: {terms: 4, types: 0, coercions: 0, joins: 0/0}
+$dIP3 :: GHC.Stack.Types.CallStack
+$dIP3
+  = GHC.Stack.Types.PushCallStack
+      $dIP1 $dIP2 GHC.Stack.Types.EmptyCallStack
+
+-- RHS size: {terms: 2, types: 2, coercions: 4, joins: 0/0}
+lvl :: Float
+lvl
+  = undefined @ 'GHC.Types.LiftedRep @ Float ($dIP3 `cast` <Co:4>)
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl1 :: Integer
+lvl1 = 12
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl2 :: Integer
+lvl2 = 4
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl3 :: ('[1, 2, 3] :: [Nat]) ~~ ('[1, 2, 3] :: [Nat])
+lvl3
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[1, 2, 3] @ '[1, 2, 3] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl4
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 2, 3]
+lvl4
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 2, 3]
+      @ 1
+      @ '[2, 3]
+      (lvl3 `cast` <Co:26>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI17 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl5 :: ('[1, 2, 2] :: [Nat]) ~~ ('[1, 2, 2] :: [Nat])
+lvl5
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[1, 2, 2] @ '[1, 2, 2] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl6
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 2, 2]
+lvl6
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 2, 2]
+      @ 1
+      @ '[2, 2]
+      (lvl5 `cast` <Co:26>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI11 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl7 :: ('[1, 2, 1] :: [Nat]) ~~ ('[1, 2, 1] :: [Nat])
+lvl7
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[1, 2, 1] @ '[1, 2, 1] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl8
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 2, 1]
+lvl8
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 2, 1]
+      @ 1
+      @ '[2, 1]
+      (lvl7 `cast` <Co:26>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI21 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl9 :: ('[1, 2, 0] :: [Nat]) ~~ ('[1, 2, 0] :: [Nat])
+lvl9
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[1, 2, 0] @ '[1, 2, 0] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl10
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 2, 0]
+lvl10
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 2, 0]
+      @ 1
+      @ '[2, 0]
+      (lvl9 `cast` <Co:26>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI15 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl11 :: ('[1, 1, 3] :: [Nat]) ~~ ('[1, 1, 3] :: [Nat])
+lvl11
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[1, 1, 3] @ '[1, 1, 3] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl12
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 1, 3]
+lvl12
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 1, 3]
+      @ 1
+      @ '[1, 3]
+      (lvl11 `cast` <Co:26>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI25 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl13 :: ('[1, 1, 2] :: [Nat]) ~~ ('[1, 1, 2] :: [Nat])
+lvl13
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[1, 1, 2] @ '[1, 1, 2] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl14
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 1, 2]
+lvl14
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 1, 2]
+      @ 1
+      @ '[1, 2]
+      (lvl13 `cast` <Co:26>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI27 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl15 :: ('[1, 1, 1] :: [Nat]) ~~ ('[1, 1, 1] :: [Nat])
+lvl15
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[1, 1, 1] @ '[1, 1, 1] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl16
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 1, 1]
+lvl16
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 1, 1]
+      @ 1
+      @ '[1, 1]
+      (lvl15 `cast` <Co:26>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI29 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl17 :: ('[1, 1, 0] :: [Nat]) ~~ ('[1, 1, 0] :: [Nat])
+lvl17
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[1, 1, 0] @ '[1, 1, 0] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl18
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 1, 0]
+lvl18
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 1, 0]
+      @ 1
+      @ '[1, 0]
+      (lvl17 `cast` <Co:26>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI31 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl19 :: ('[1, 0, 3] :: [Nat]) ~~ ('[1, 0, 3] :: [Nat])
+lvl19
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[1, 0, 3] @ '[1, 0, 3] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl20
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 0, 3]
+lvl20
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 0, 3]
+      @ 1
+      @ '[0, 3]
+      (lvl19 `cast` <Co:26>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI7 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl21 :: ('[1, 0, 2] :: [Nat]) ~~ ('[1, 0, 2] :: [Nat])
+lvl21
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[1, 0, 2] @ '[1, 0, 2] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl22
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 0, 2]
+lvl22
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 0, 2]
+      @ 1
+      @ '[0, 2]
+      (lvl21 `cast` <Co:26>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI13 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl23 :: ('[1, 0, 1] :: [Nat]) ~~ ('[1, 0, 1] :: [Nat])
+lvl23
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[1, 0, 1] @ '[1, 0, 1] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl24
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 0, 1]
+lvl24
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 0, 1]
+      @ 1
+      @ '[0, 1]
+      (lvl23 `cast` <Co:26>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI23 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl25 :: ('[1, 0, 0] :: [Nat]) ~~ ('[1, 0, 0] :: [Nat])
+lvl25
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[1, 0, 0] @ '[1, 0, 0] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl26
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[1, 0, 0]
+lvl26
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[1, 0, 0]
+      @ 1
+      @ '[0, 0]
+      (lvl25 `cast` <Co:26>)
+      ($s$WSNat15 `cast` <Co:3>)
+      ($dSingI3 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl27 :: ('[0, 2, 3] :: [Nat]) ~~ ('[0, 2, 3] :: [Nat])
+lvl27
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[0, 2, 3] @ '[0, 2, 3] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl28
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 2, 3]
+lvl28
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 2, 3]
+      @ 0
+      @ '[2, 3]
+      (lvl27 `cast` <Co:26>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI17 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl29 :: ('[0, 2, 2] :: [Nat]) ~~ ('[0, 2, 2] :: [Nat])
+lvl29
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[0, 2, 2] @ '[0, 2, 2] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl30
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 2, 2]
+lvl30
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 2, 2]
+      @ 0
+      @ '[2, 2]
+      (lvl29 `cast` <Co:26>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI11 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl31 :: ('[0, 2, 1] :: [Nat]) ~~ ('[0, 2, 1] :: [Nat])
+lvl31
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[0, 2, 1] @ '[0, 2, 1] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl32
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 2, 1]
+lvl32
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 2, 1]
+      @ 0
+      @ '[2, 1]
+      (lvl31 `cast` <Co:26>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI21 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl33 :: ('[0, 2, 0] :: [Nat]) ~~ ('[0, 2, 0] :: [Nat])
+lvl33
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[0, 2, 0] @ '[0, 2, 0] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl34
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 2, 0]
+lvl34
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 2, 0]
+      @ 0
+      @ '[2, 0]
+      (lvl33 `cast` <Co:26>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI15 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl35 :: ('[0, 1, 3] :: [Nat]) ~~ ('[0, 1, 3] :: [Nat])
+lvl35
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[0, 1, 3] @ '[0, 1, 3] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl36
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 1, 3]
+lvl36
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 1, 3]
+      @ 0
+      @ '[1, 3]
+      (lvl35 `cast` <Co:26>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI25 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl37 :: ('[0, 1, 2] :: [Nat]) ~~ ('[0, 1, 2] :: [Nat])
+lvl37
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[0, 1, 2] @ '[0, 1, 2] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl38
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 1, 2]
+lvl38
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 1, 2]
+      @ 0
+      @ '[1, 2]
+      (lvl37 `cast` <Co:26>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI27 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl39 :: ('[0, 1, 1] :: [Nat]) ~~ ('[0, 1, 1] :: [Nat])
+lvl39
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[0, 1, 1] @ '[0, 1, 1] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl40
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 1, 1]
+lvl40
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 1, 1]
+      @ 0
+      @ '[1, 1]
+      (lvl39 `cast` <Co:26>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI29 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl41 :: ('[0, 1, 0] :: [Nat]) ~~ ('[0, 1, 0] :: [Nat])
+lvl41
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[0, 1, 0] @ '[0, 1, 0] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl42
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 1, 0]
+lvl42
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 1, 0]
+      @ 0
+      @ '[1, 0]
+      (lvl41 `cast` <Co:26>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI31 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl43 :: ('[0, 0, 3] :: [Nat]) ~~ ('[0, 0, 3] :: [Nat])
+lvl43
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[0, 0, 3] @ '[0, 0, 3] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl44
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 0, 3]
+lvl44
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 0, 3]
+      @ 0
+      @ '[0, 3]
+      (lvl43 `cast` <Co:26>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI7 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl45 :: ('[0, 0, 2] :: [Nat]) ~~ ('[0, 0, 2] :: [Nat])
+lvl45
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[0, 0, 2] @ '[0, 0, 2] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl46
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 0, 2]
+lvl46
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 0, 2]
+      @ 0
+      @ '[0, 2]
+      (lvl45 `cast` <Co:26>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI13 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl47 :: ('[0, 0, 1] :: [Nat]) ~~ ('[0, 0, 1] :: [Nat])
+lvl47
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[0, 0, 1] @ '[0, 0, 1] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl48
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 0, 1]
+lvl48
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 0, 1]
+      @ 0
+      @ '[0, 1]
+      (lvl47 `cast` <Co:26>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI23 `cast` <Co:127>)
+
+-- RHS size: {terms: 1, types: 26, coercions: 11, joins: 0/0}
+lvl49 :: ('[0, 0, 0] :: [Nat]) ~~ ('[0, 0, 0] :: [Nat])
+lvl49
+  = GHC.Types.Eq#
+      @ [Nat] @ [Nat] @ '[0, 0, 0] @ '[0, 0, 0] @~ <Co:11>
+
+-- RHS size: {terms: 4, types: 21, coercions: 156, joins: 0/0}
+lvl50
+  :: singletons-2.3.1:Data.Singletons.Prelude.Instances.R:Sing[]z
+       Nat '[0, 0, 0]
+lvl50
+  = singletons-2.3.1:Data.Singletons.Prelude.Instances.SCons
+      @ Nat
+      @ '[0, 0, 0]
+      @ 0
+      @ '[0, 0]
+      (lvl49 `cast` <Co:26>)
+      ($s$WSNat12 `cast` <Co:3>)
+      ($dSingI3 `cast` <Co:127>)
+
+-- RHS size: {terms: 961, types: 888, coercions: 2,066, joins: 0/0}
+generateSing_ :: Tensor '[2, 3, 4] Float
+generateSing_
+  = case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+            @ Nat
+            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+            @ '[0, 0, 0]
+            (lvl50 `cast` <Co:79>))
+         `cast` <Co:7>
+    of {
+      [] -> case lvl of wild1 { };
+      : i ds ->
+        case ds of {
+          [] -> case lvl of wild2 { };
+          : j ds1 ->
+            case ds1 of {
+              [] -> case lvl of wild3 { };
+              : k ds2 ->
+                case ds2 of {
+                  [] ->
+                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger i lvl1)
+                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger j lvl2))
+                              k)
+                    of wild4
+                    { __DEFAULT ->
+                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                            @ Nat
+                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                            @ '[0, 0, 1]
+                            (lvl48 `cast` <Co:79>))
+                         `cast` <Co:7>
+                    of {
+                      [] -> case lvl of wild6 { };
+                      : i1 ds3 ->
+                        case ds3 of {
+                          [] -> case lvl of wild7 { };
+                          : j1 ds4 ->
+                            case ds4 of {
+                              [] -> case lvl of wild8 { };
+                              : k1 ds5 ->
+                                case ds5 of {
+                                  [] ->
+                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                    i1 lvl1)
+                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                    j1 lvl2))
+                                              k1)
+                                    of wild9
+                                    { __DEFAULT ->
+                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                            @ Nat
+                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                            @ '[0, 0, 2]
+                                            (lvl46 `cast` <Co:79>))
+                                         `cast` <Co:7>
+                                    of {
+                                      [] -> case lvl of wild11 { };
+                                      : i2 ds6 ->
+                                        case ds6 of {
+                                          [] -> case lvl of wild12 { };
+                                          : j2 ds7 ->
+                                            case ds7 of {
+                                              [] -> case lvl of wild13 { };
+                                              : k2 ds8 ->
+                                                case ds8 of {
+                                                  [] ->
+                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                    i2 lvl1)
+                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                    j2 lvl2))
+                                                              k2)
+                                                    of wild14
+                                                    { __DEFAULT ->
+                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                            @ Nat
+                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                            @ '[0, 0, 3]
+                                                            (lvl44 `cast` <Co:79>))
+                                                         `cast` <Co:7>
+                                                    of {
+                                                      [] -> case lvl of wild16 { };
+                                                      : i3 ds9 ->
+                                                        case ds9 of {
+                                                          [] -> case lvl of wild17 { };
+                                                          : j3 ds10 ->
+                                                            case ds10 of {
+                                                              [] -> case lvl of wild18 { };
+                                                              : k3 ds11 ->
+                                                                case ds11 of {
+                                                                  [] ->
+                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                    i3 lvl1)
+                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                    j3 lvl2))
+                                                                              k3)
+                                                                    of wild19
+                                                                    { __DEFAULT ->
+                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                            @ Nat
+                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                            @ '[0, 1, 0]
+                                                                            (lvl42 `cast` <Co:79>))
+                                                                         `cast` <Co:7>
+                                                                    of {
+                                                                      [] -> case lvl of wild21 { };
+                                                                      : i4 ds12 ->
+                                                                        case ds12 of {
+                                                                          [] ->
+                                                                            case lvl of wild22 { };
+                                                                          : j4 ds13 ->
+                                                                            case ds13 of {
+                                                                              [] ->
+                                                                                case lvl of wild23 {
+                                                                                };
+                                                                              : k4 ds14 ->
+                                                                                case ds14 of {
+                                                                                  [] ->
+                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                    i4
+                                                                                                    lvl1)
+                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                    j4
+                                                                                                    lvl2))
+                                                                                              k4)
+                                                                                    of wild24
+                                                                                    { __DEFAULT ->
+                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                            @ Nat
+                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                            @ '[0,
+                                                                                                1,
+                                                                                                1]
+                                                                                            (lvl40
+                                                                                             `cast` <Co:79>))
+                                                                                         `cast` <Co:7>
+                                                                                    of {
+                                                                                      [] ->
+                                                                                        case lvl
+                                                                                        of wild26 {
+                                                                                        };
+                                                                                      : i5 ds15 ->
+                                                                                        case ds15
+                                                                                        of {
+                                                                                          [] ->
+                                                                                            case lvl
+                                                                                            of wild27 {
+                                                                                            };
+                                                                                          : j5
+                                                                                            ds16 ->
+                                                                                            case ds16
+                                                                                            of {
+                                                                                              [] ->
+                                                                                                case lvl
+                                                                                                of wild28 {
+                                                                                                };
+                                                                                              : k5
+                                                                                                ds17 ->
+                                                                                                case ds17
+                                                                                                of {
+                                                                                                  [] ->
+                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                    i5
+                                                                                                                    lvl1)
+                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                    j5
+                                                                                                                    lvl2))
+                                                                                                              k5)
+                                                                                                    of wild29
+                                                                                                    { __DEFAULT ->
+                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                            @ Nat
+                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                            @ '[0,
+                                                                                                                1,
+                                                                                                                2]
+                                                                                                            (lvl38
+                                                                                                             `cast` <Co:79>))
+                                                                                                         `cast` <Co:7>
+                                                                                                    of {
+                                                                                                      [] ->
+                                                                                                        case lvl
+                                                                                                        of wild31 {
+                                                                                                        };
+                                                                                                      : i6
+                                                                                                        ds18 ->
+                                                                                                        case ds18
+                                                                                                        of {
+                                                                                                          [] ->
+                                                                                                            case lvl
+                                                                                                            of wild32 {
+                                                                                                            };
+                                                                                                          : j6
+                                                                                                            ds19 ->
+                                                                                                            case ds19
+                                                                                                            of {
+                                                                                                              [] ->
+                                                                                                                case lvl
+                                                                                                                of wild33 {
+                                                                                                                };
+                                                                                                              : k6
+                                                                                                                ds20 ->
+                                                                                                                case ds20
+                                                                                                                of {
+                                                                                                                  [] ->
+                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                    i6
+                                                                                                                                    lvl1)
+                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                    j6
+                                                                                                                                    lvl2))
+                                                                                                                              k6)
+                                                                                                                    of wild34
+                                                                                                                    { __DEFAULT ->
+                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                            @ Nat
+                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                            @ '[0,
+                                                                                                                                1,
+                                                                                                                                3]
+                                                                                                                            (lvl36
+                                                                                                                             `cast` <Co:79>))
+                                                                                                                         `cast` <Co:7>
+                                                                                                                    of {
+                                                                                                                      [] ->
+                                                                                                                        case lvl
+                                                                                                                        of wild36 {
+                                                                                                                        };
+                                                                                                                      : i7
+                                                                                                                        ds21 ->
+                                                                                                                        case ds21
+                                                                                                                        of {
+                                                                                                                          [] ->
+                                                                                                                            case lvl
+                                                                                                                            of wild37 {
+                                                                                                                            };
+                                                                                                                          : j7
+                                                                                                                            ds22 ->
+                                                                                                                            case ds22
+                                                                                                                            of {
+                                                                                                                              [] ->
+                                                                                                                                case lvl
+                                                                                                                                of wild38 {
+                                                                                                                                };
+                                                                                                                              : k7
+                                                                                                                                ds23 ->
+                                                                                                                                case ds23
+                                                                                                                                of {
+                                                                                                                                  [] ->
+                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                    i7
+                                                                                                                                                    lvl1)
+                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                    j7
+                                                                                                                                                    lvl2))
+                                                                                                                                              k7)
+                                                                                                                                    of wild39
+                                                                                                                                    { __DEFAULT ->
+                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                            @ Nat
+                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                            @ '[0,
+                                                                                                                                                2,
+                                                                                                                                                0]
+                                                                                                                                            (lvl34
+                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                         `cast` <Co:7>
+                                                                                                                                    of {
+                                                                                                                                      [] ->
+                                                                                                                                        case lvl
+                                                                                                                                        of wild41 {
+                                                                                                                                        };
+                                                                                                                                      : i8
+                                                                                                                                        ds24 ->
+                                                                                                                                        case ds24
+                                                                                                                                        of {
+                                                                                                                                          [] ->
+                                                                                                                                            case lvl
+                                                                                                                                            of wild42 {
+                                                                                                                                            };
+                                                                                                                                          : j8
+                                                                                                                                            ds25 ->
+                                                                                                                                            case ds25
+                                                                                                                                            of {
+                                                                                                                                              [] ->
+                                                                                                                                                case lvl
+                                                                                                                                                of wild43 {
+                                                                                                                                                };
+                                                                                                                                              : k8
+                                                                                                                                                ds26 ->
+                                                                                                                                                case ds26
+                                                                                                                                                of {
+                                                                                                                                                  [] ->
+                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                    i8
+                                                                                                                                                                    lvl1)
+                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                    j8
+                                                                                                                                                                    lvl2))
+                                                                                                                                                              k8)
+                                                                                                                                                    of wild44
+                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                            @ Nat
+                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                            @ '[0,
+                                                                                                                                                                2,
+                                                                                                                                                                1]
+                                                                                                                                                            (lvl32
+                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                    of {
+                                                                                                                                                      [] ->
+                                                                                                                                                        case lvl
+                                                                                                                                                        of wild46 {
+                                                                                                                                                        };
+                                                                                                                                                      : i9
+                                                                                                                                                        ds27 ->
+                                                                                                                                                        case ds27
+                                                                                                                                                        of {
+                                                                                                                                                          [] ->
+                                                                                                                                                            case lvl
+                                                                                                                                                            of wild47 {
+                                                                                                                                                            };
+                                                                                                                                                          : j9
+                                                                                                                                                            ds28 ->
+                                                                                                                                                            case ds28
+                                                                                                                                                            of {
+                                                                                                                                                              [] ->
+                                                                                                                                                                case lvl
+                                                                                                                                                                of wild48 {
+                                                                                                                                                                };
+                                                                                                                                                              : k9
+                                                                                                                                                                ds29 ->
+                                                                                                                                                                case ds29
+                                                                                                                                                                of {
+                                                                                                                                                                  [] ->
+                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                    i9
+                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                    j9
+                                                                                                                                                                                    lvl2))
+                                                                                                                                                                              k9)
+                                                                                                                                                                    of wild49
+                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                            @ Nat
+                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                            @ '[0,
+                                                                                                                                                                                2,
+                                                                                                                                                                                2]
+                                                                                                                                                                            (lvl30
+                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                    of {
+                                                                                                                                                                      [] ->
+                                                                                                                                                                        case lvl
+                                                                                                                                                                        of wild51 {
+                                                                                                                                                                        };
+                                                                                                                                                                      : i10
+                                                                                                                                                                        ds30 ->
+                                                                                                                                                                        case ds30
+                                                                                                                                                                        of {
+                                                                                                                                                                          [] ->
+                                                                                                                                                                            case lvl
+                                                                                                                                                                            of wild52 {
+                                                                                                                                                                            };
+                                                                                                                                                                          : j10
+                                                                                                                                                                            ds31 ->
+                                                                                                                                                                            case ds31
+                                                                                                                                                                            of {
+                                                                                                                                                                              [] ->
+                                                                                                                                                                                case lvl
+                                                                                                                                                                                of wild53 {
+                                                                                                                                                                                };
+                                                                                                                                                                              : k10
+                                                                                                                                                                                ds32 ->
+                                                                                                                                                                                case ds32
+                                                                                                                                                                                of {
+                                                                                                                                                                                  [] ->
+                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                    i10
+                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                    j10
+                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                              k10)
+                                                                                                                                                                                    of wild54
+                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                                            @ Nat
+                                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                                            @ '[0,
+                                                                                                                                                                                                2,
+                                                                                                                                                                                                3]
+                                                                                                                                                                                            (lvl28
+                                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                                    of {
+                                                                                                                                                                                      [] ->
+                                                                                                                                                                                        case lvl
+                                                                                                                                                                                        of wild56 {
+                                                                                                                                                                                        };
+                                                                                                                                                                                      : i11
+                                                                                                                                                                                        ds33 ->
+                                                                                                                                                                                        case ds33
+                                                                                                                                                                                        of {
+                                                                                                                                                                                          [] ->
+                                                                                                                                                                                            case lvl
+                                                                                                                                                                                            of wild57 {
+                                                                                                                                                                                            };
+                                                                                                                                                                                          : j11
+                                                                                                                                                                                            ds34 ->
+                                                                                                                                                                                            case ds34
+                                                                                                                                                                                            of {
+                                                                                                                                                                                              [] ->
+                                                                                                                                                                                                case lvl
+                                                                                                                                                                                                of wild58 {
+                                                                                                                                                                                                };
+                                                                                                                                                                                              : k11
+                                                                                                                                                                                                ds35 ->
+                                                                                                                                                                                                case ds35
+                                                                                                                                                                                                of {
+                                                                                                                                                                                                  [] ->
+                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                    i11
+                                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                    j11
+                                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                                              k11)
+                                                                                                                                                                                                    of wild59
+                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                                                            @ Nat
+                                                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                                                            @ '[1,
+                                                                                                                                                                                                                0,
+                                                                                                                                                                                                                0]
+                                                                                                                                                                                                            (lvl26
+                                                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                                                    of {
+                                                                                                                                                                                                      [] ->
+                                                                                                                                                                                                        case lvl
+                                                                                                                                                                                                        of wild61 {
+                                                                                                                                                                                                        };
+                                                                                                                                                                                                      : i12
+                                                                                                                                                                                                        ds36 ->
+                                                                                                                                                                                                        case ds36
+                                                                                                                                                                                                        of {
+                                                                                                                                                                                                          [] ->
+                                                                                                                                                                                                            case lvl
+                                                                                                                                                                                                            of wild62 {
+                                                                                                                                                                                                            };
+                                                                                                                                                                                                          : j12
+                                                                                                                                                                                                            ds37 ->
+                                                                                                                                                                                                            case ds37
+                                                                                                                                                                                                            of {
+                                                                                                                                                                                                              [] ->
+                                                                                                                                                                                                                case lvl
+                                                                                                                                                                                                                of wild63 {
+                                                                                                                                                                                                                };
+                                                                                                                                                                                                              : k12
+                                                                                                                                                                                                                ds38 ->
+                                                                                                                                                                                                                case ds38
+                                                                                                                                                                                                                of {
+                                                                                                                                                                                                                  [] ->
+                                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                    i12
+                                                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                    j12
+                                                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                                                              k12)
+                                                                                                                                                                                                                    of wild64
+                                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                                                                            @ Nat
+                                                                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                                                                            @ '[1,
+                                                                                                                                                                                                                                0,
+                                                                                                                                                                                                                                1]
+                                                                                                                                                                                                                            (lvl24
+                                                                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                                                                    of {
+                                                                                                                                                                                                                      [] ->
+                                                                                                                                                                                                                        case lvl
+                                                                                                                                                                                                                        of wild66 {
+                                                                                                                                                                                                                        };
+                                                                                                                                                                                                                      : i13
+                                                                                                                                                                                                                        ds39 ->
+                                                                                                                                                                                                                        case ds39
+                                                                                                                                                                                                                        of {
+                                                                                                                                                                                                                          [] ->
+                                                                                                                                                                                                                            case lvl
+                                                                                                                                                                                                                            of wild67 {
+                                                                                                                                                                                                                            };
+                                                                                                                                                                                                                          : j13
+                                                                                                                                                                                                                            ds40 ->
+                                                                                                                                                                                                                            case ds40
+                                                                                                                                                                                                                            of {
+                                                                                                                                                                                                                              [] ->
+                                                                                                                                                                                                                                case lvl
+                                                                                                                                                                                                                                of wild68 {
+                                                                                                                                                                                                                                };
+                                                                                                                                                                                                                              : k13
+                                                                                                                                                                                                                                ds41 ->
+                                                                                                                                                                                                                                case ds41
+                                                                                                                                                                                                                                of {
+                                                                                                                                                                                                                                  [] ->
+                                                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                    i13
+                                                                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                    j13
+                                                                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                                                                              k13)
+                                                                                                                                                                                                                                    of wild69
+                                                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                                                                                            @ Nat
+                                                                                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                                                                                            @ '[1,
+                                                                                                                                                                                                                                                0,
+                                                                                                                                                                                                                                                2]
+                                                                                                                                                                                                                                            (lvl22
+                                                                                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                                                                                    of {
+                                                                                                                                                                                                                                      [] ->
+                                                                                                                                                                                                                                        case lvl
+                                                                                                                                                                                                                                        of wild71 {
+                                                                                                                                                                                                                                        };
+                                                                                                                                                                                                                                      : i14
+                                                                                                                                                                                                                                        ds42 ->
+                                                                                                                                                                                                                                        case ds42
+                                                                                                                                                                                                                                        of {
+                                                                                                                                                                                                                                          [] ->
+                                                                                                                                                                                                                                            case lvl
+                                                                                                                                                                                                                                            of wild72 {
+                                                                                                                                                                                                                                            };
+                                                                                                                                                                                                                                          : j14
+                                                                                                                                                                                                                                            ds43 ->
+                                                                                                                                                                                                                                            case ds43
+                                                                                                                                                                                                                                            of {
+                                                                                                                                                                                                                                              [] ->
+                                                                                                                                                                                                                                                case lvl
+                                                                                                                                                                                                                                                of wild73 {
+                                                                                                                                                                                                                                                };
+                                                                                                                                                                                                                                              : k14
+                                                                                                                                                                                                                                                ds44 ->
+                                                                                                                                                                                                                                                case ds44
+                                                                                                                                                                                                                                                of {
+                                                                                                                                                                                                                                                  [] ->
+                                                                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                    i14
+                                                                                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                    j14
+                                                                                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                                                                                              k14)
+                                                                                                                                                                                                                                                    of wild74
+                                                                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                                                                                                            @ Nat
+                                                                                                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                                                                                                            @ '[1,
+                                                                                                                                                                                                                                                                0,
+                                                                                                                                                                                                                                                                3]
+                                                                                                                                                                                                                                                            (lvl20
+                                                                                                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                                                                                                    of {
+                                                                                                                                                                                                                                                      [] ->
+                                                                                                                                                                                                                                                        case lvl
+                                                                                                                                                                                                                                                        of wild76 {
+                                                                                                                                                                                                                                                        };
+                                                                                                                                                                                                                                                      : i15
+                                                                                                                                                                                                                                                        ds45 ->
+                                                                                                                                                                                                                                                        case ds45
+                                                                                                                                                                                                                                                        of {
+                                                                                                                                                                                                                                                          [] ->
+                                                                                                                                                                                                                                                            case lvl
+                                                                                                                                                                                                                                                            of wild77 {
+                                                                                                                                                                                                                                                            };
+                                                                                                                                                                                                                                                          : j15
+                                                                                                                                                                                                                                                            ds46 ->
+                                                                                                                                                                                                                                                            case ds46
+                                                                                                                                                                                                                                                            of {
+                                                                                                                                                                                                                                                              [] ->
+                                                                                                                                                                                                                                                                case lvl
+                                                                                                                                                                                                                                                                of wild78 {
+                                                                                                                                                                                                                                                                };
+                                                                                                                                                                                                                                                              : k15
+                                                                                                                                                                                                                                                                ds47 ->
+                                                                                                                                                                                                                                                                case ds47
+                                                                                                                                                                                                                                                                of {
+                                                                                                                                                                                                                                                                  [] ->
+                                                                                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                    i15
+                                                                                                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                    j15
+                                                                                                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                                                                                                              k15)
+                                                                                                                                                                                                                                                                    of wild79
+                                                                                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                                                                                                                            @ Nat
+                                                                                                                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                                                                                                                            @ '[1,
+                                                                                                                                                                                                                                                                                1,
+                                                                                                                                                                                                                                                                                0]
+                                                                                                                                                                                                                                                                            (lvl18
+                                                                                                                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                                                                                                                    of {
+                                                                                                                                                                                                                                                                      [] ->
+                                                                                                                                                                                                                                                                        case lvl
+                                                                                                                                                                                                                                                                        of wild81 {
+                                                                                                                                                                                                                                                                        };
+                                                                                                                                                                                                                                                                      : i16
+                                                                                                                                                                                                                                                                        ds48 ->
+                                                                                                                                                                                                                                                                        case ds48
+                                                                                                                                                                                                                                                                        of {
+                                                                                                                                                                                                                                                                          [] ->
+                                                                                                                                                                                                                                                                            case lvl
+                                                                                                                                                                                                                                                                            of wild82 {
+                                                                                                                                                                                                                                                                            };
+                                                                                                                                                                                                                                                                          : j16
+                                                                                                                                                                                                                                                                            ds49 ->
+                                                                                                                                                                                                                                                                            case ds49
+                                                                                                                                                                                                                                                                            of {
+                                                                                                                                                                                                                                                                              [] ->
+                                                                                                                                                                                                                                                                                case lvl
+                                                                                                                                                                                                                                                                                of wild83 {
+                                                                                                                                                                                                                                                                                };
+                                                                                                                                                                                                                                                                              : k16
+                                                                                                                                                                                                                                                                                ds50 ->
+                                                                                                                                                                                                                                                                                case ds50
+                                                                                                                                                                                                                                                                                of {
+                                                                                                                                                                                                                                                                                  [] ->
+                                                                                                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                    i16
+                                                                                                                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                    j16
+                                                                                                                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                                                                                                                              k16)
+                                                                                                                                                                                                                                                                                    of wild84
+                                                                                                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                                                                                                                                            @ Nat
+                                                                                                                                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                                                                                                                                            @ '[1,
+                                                                                                                                                                                                                                                                                                1,
+                                                                                                                                                                                                                                                                                                1]
+                                                                                                                                                                                                                                                                                            (lvl16
+                                                                                                                                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                                                                                                                                    of {
+                                                                                                                                                                                                                                                                                      [] ->
+                                                                                                                                                                                                                                                                                        case lvl
+                                                                                                                                                                                                                                                                                        of wild86 {
+                                                                                                                                                                                                                                                                                        };
+                                                                                                                                                                                                                                                                                      : i17
+                                                                                                                                                                                                                                                                                        ds51 ->
+                                                                                                                                                                                                                                                                                        case ds51
+                                                                                                                                                                                                                                                                                        of {
+                                                                                                                                                                                                                                                                                          [] ->
+                                                                                                                                                                                                                                                                                            case lvl
+                                                                                                                                                                                                                                                                                            of wild87 {
+                                                                                                                                                                                                                                                                                            };
+                                                                                                                                                                                                                                                                                          : j17
+                                                                                                                                                                                                                                                                                            ds52 ->
+                                                                                                                                                                                                                                                                                            case ds52
+                                                                                                                                                                                                                                                                                            of {
+                                                                                                                                                                                                                                                                                              [] ->
+                                                                                                                                                                                                                                                                                                case lvl
+                                                                                                                                                                                                                                                                                                of wild88 {
+                                                                                                                                                                                                                                                                                                };
+                                                                                                                                                                                                                                                                                              : k17
+                                                                                                                                                                                                                                                                                                ds53 ->
+                                                                                                                                                                                                                                                                                                case ds53
+                                                                                                                                                                                                                                                                                                of {
+                                                                                                                                                                                                                                                                                                  [] ->
+                                                                                                                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                    i17
+                                                                                                                                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                    j17
+                                                                                                                                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                                                                                                                                              k17)
+                                                                                                                                                                                                                                                                                                    of wild89
+                                                                                                                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                                                                                                                                                            @ Nat
+                                                                                                                                                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                                                                                                                                                            @ '[1,
+                                                                                                                                                                                                                                                                                                                1,
+                                                                                                                                                                                                                                                                                                                2]
+                                                                                                                                                                                                                                                                                                            (lvl14
+                                                                                                                                                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                                                                                                                                                    of {
+                                                                                                                                                                                                                                                                                                      [] ->
+                                                                                                                                                                                                                                                                                                        case lvl
+                                                                                                                                                                                                                                                                                                        of wild91 {
+                                                                                                                                                                                                                                                                                                        };
+                                                                                                                                                                                                                                                                                                      : i18
+                                                                                                                                                                                                                                                                                                        ds54 ->
+                                                                                                                                                                                                                                                                                                        case ds54
+                                                                                                                                                                                                                                                                                                        of {
+                                                                                                                                                                                                                                                                                                          [] ->
+                                                                                                                                                                                                                                                                                                            case lvl
+                                                                                                                                                                                                                                                                                                            of wild92 {
+                                                                                                                                                                                                                                                                                                            };
+                                                                                                                                                                                                                                                                                                          : j18
+                                                                                                                                                                                                                                                                                                            ds55 ->
+                                                                                                                                                                                                                                                                                                            case ds55
+                                                                                                                                                                                                                                                                                                            of {
+                                                                                                                                                                                                                                                                                                              [] ->
+                                                                                                                                                                                                                                                                                                                case lvl
+                                                                                                                                                                                                                                                                                                                of wild93 {
+                                                                                                                                                                                                                                                                                                                };
+                                                                                                                                                                                                                                                                                                              : k18
+                                                                                                                                                                                                                                                                                                                ds56 ->
+                                                                                                                                                                                                                                                                                                                case ds56
+                                                                                                                                                                                                                                                                                                                of {
+                                                                                                                                                                                                                                                                                                                  [] ->
+                                                                                                                                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                                    i18
+                                                                                                                                                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                                    j18
+                                                                                                                                                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                                                                                                                                                              k18)
+                                                                                                                                                                                                                                                                                                                    of wild94
+                                                                                                                                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                                                                                                                                                                            @ Nat
+                                                                                                                                                                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                                                                                                                                                                            @ '[1,
+                                                                                                                                                                                                                                                                                                                                1,
+                                                                                                                                                                                                                                                                                                                                3]
+                                                                                                                                                                                                                                                                                                                            (lvl12
+                                                                                                                                                                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                                                                                                                                                                    of {
+                                                                                                                                                                                                                                                                                                                      [] ->
+                                                                                                                                                                                                                                                                                                                        case lvl
+                                                                                                                                                                                                                                                                                                                        of wild96 {
+                                                                                                                                                                                                                                                                                                                        };
+                                                                                                                                                                                                                                                                                                                      : i19
+                                                                                                                                                                                                                                                                                                                        ds57 ->
+                                                                                                                                                                                                                                                                                                                        case ds57
+                                                                                                                                                                                                                                                                                                                        of {
+                                                                                                                                                                                                                                                                                                                          [] ->
+                                                                                                                                                                                                                                                                                                                            case lvl
+                                                                                                                                                                                                                                                                                                                            of wild97 {
+                                                                                                                                                                                                                                                                                                                            };
+                                                                                                                                                                                                                                                                                                                          : j19
+                                                                                                                                                                                                                                                                                                                            ds58 ->
+                                                                                                                                                                                                                                                                                                                            case ds58
+                                                                                                                                                                                                                                                                                                                            of {
+                                                                                                                                                                                                                                                                                                                              [] ->
+                                                                                                                                                                                                                                                                                                                                case lvl
+                                                                                                                                                                                                                                                                                                                                of wild98 {
+                                                                                                                                                                                                                                                                                                                                };
+                                                                                                                                                                                                                                                                                                                              : k19
+                                                                                                                                                                                                                                                                                                                                ds59 ->
+                                                                                                                                                                                                                                                                                                                                case ds59
+                                                                                                                                                                                                                                                                                                                                of {
+                                                                                                                                                                                                                                                                                                                                  [] ->
+                                                                                                                                                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                                                    i19
+                                                                                                                                                                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                                                    j19
+                                                                                                                                                                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                                                                                                                                                                              k19)
+                                                                                                                                                                                                                                                                                                                                    of wild99
+                                                                                                                                                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                                                                                                                                                                                            @ Nat
+                                                                                                                                                                                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                                                                                                                                                                                            @ '[1,
+                                                                                                                                                                                                                                                                                                                                                2,
+                                                                                                                                                                                                                                                                                                                                                0]
+                                                                                                                                                                                                                                                                                                                                            (lvl10
+                                                                                                                                                                                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                                                                                                                                                                                    of {
+                                                                                                                                                                                                                                                                                                                                      [] ->
+                                                                                                                                                                                                                                                                                                                                        case lvl
+                                                                                                                                                                                                                                                                                                                                        of wild101 {
+                                                                                                                                                                                                                                                                                                                                        };
+                                                                                                                                                                                                                                                                                                                                      : i20
+                                                                                                                                                                                                                                                                                                                                        ds60 ->
+                                                                                                                                                                                                                                                                                                                                        case ds60
+                                                                                                                                                                                                                                                                                                                                        of {
+                                                                                                                                                                                                                                                                                                                                          [] ->
+                                                                                                                                                                                                                                                                                                                                            case lvl
+                                                                                                                                                                                                                                                                                                                                            of wild102 {
+                                                                                                                                                                                                                                                                                                                                            };
+                                                                                                                                                                                                                                                                                                                                          : j20
+                                                                                                                                                                                                                                                                                                                                            ds61 ->
+                                                                                                                                                                                                                                                                                                                                            case ds61
+                                                                                                                                                                                                                                                                                                                                            of {
+                                                                                                                                                                                                                                                                                                                                              [] ->
+                                                                                                                                                                                                                                                                                                                                                case lvl
+                                                                                                                                                                                                                                                                                                                                                of wild103 {
+                                                                                                                                                                                                                                                                                                                                                };
+                                                                                                                                                                                                                                                                                                                                              : k20
+                                                                                                                                                                                                                                                                                                                                                ds62 ->
+                                                                                                                                                                                                                                                                                                                                                case ds62
+                                                                                                                                                                                                                                                                                                                                                of {
+                                                                                                                                                                                                                                                                                                                                                  [] ->
+                                                                                                                                                                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                                                                    i20
+                                                                                                                                                                                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                                                                    j20
+                                                                                                                                                                                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                                                                                                                                                                                              k20)
+                                                                                                                                                                                                                                                                                                                                                    of wild104
+                                                                                                                                                                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                                                                                                                                                                                                            @ Nat
+                                                                                                                                                                                                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                                                                                                                                                                                                            @ '[1,
+                                                                                                                                                                                                                                                                                                                                                                2,
+                                                                                                                                                                                                                                                                                                                                                                1]
+                                                                                                                                                                                                                                                                                                                                                            (lvl8
+                                                                                                                                                                                                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                                                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                                                                                                                                                                                                    of {
+                                                                                                                                                                                                                                                                                                                                                      [] ->
+                                                                                                                                                                                                                                                                                                                                                        case lvl
+                                                                                                                                                                                                                                                                                                                                                        of wild106 {
+                                                                                                                                                                                                                                                                                                                                                        };
+                                                                                                                                                                                                                                                                                                                                                      : i21
+                                                                                                                                                                                                                                                                                                                                                        ds63 ->
+                                                                                                                                                                                                                                                                                                                                                        case ds63
+                                                                                                                                                                                                                                                                                                                                                        of {
+                                                                                                                                                                                                                                                                                                                                                          [] ->
+                                                                                                                                                                                                                                                                                                                                                            case lvl
+                                                                                                                                                                                                                                                                                                                                                            of wild107 {
+                                                                                                                                                                                                                                                                                                                                                            };
+                                                                                                                                                                                                                                                                                                                                                          : j21
+                                                                                                                                                                                                                                                                                                                                                            ds64 ->
+                                                                                                                                                                                                                                                                                                                                                            case ds64
+                                                                                                                                                                                                                                                                                                                                                            of {
+                                                                                                                                                                                                                                                                                                                                                              [] ->
+                                                                                                                                                                                                                                                                                                                                                                case lvl
+                                                                                                                                                                                                                                                                                                                                                                of wild108 {
+                                                                                                                                                                                                                                                                                                                                                                };
+                                                                                                                                                                                                                                                                                                                                                              : k21
+                                                                                                                                                                                                                                                                                                                                                                ds65 ->
+                                                                                                                                                                                                                                                                                                                                                                case ds65
+                                                                                                                                                                                                                                                                                                                                                                of {
+                                                                                                                                                                                                                                                                                                                                                                  [] ->
+                                                                                                                                                                                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                                                                                    i21
+                                                                                                                                                                                                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                                                                                    j21
+                                                                                                                                                                                                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                                                                                                                                                                                                              k21)
+                                                                                                                                                                                                                                                                                                                                                                    of wild109
+                                                                                                                                                                                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                                                                                                                                                                                                                            @ Nat
+                                                                                                                                                                                                                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                                                                                                                                                                                                                            @ '[1,
+                                                                                                                                                                                                                                                                                                                                                                                2,
+                                                                                                                                                                                                                                                                                                                                                                                2]
+                                                                                                                                                                                                                                                                                                                                                                            (lvl6
+                                                                                                                                                                                                                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                                                                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                                                                                                                                                                                                                    of {
+                                                                                                                                                                                                                                                                                                                                                                      [] ->
+                                                                                                                                                                                                                                                                                                                                                                        case lvl
+                                                                                                                                                                                                                                                                                                                                                                        of wild111 {
+                                                                                                                                                                                                                                                                                                                                                                        };
+                                                                                                                                                                                                                                                                                                                                                                      : i22
+                                                                                                                                                                                                                                                                                                                                                                        ds66 ->
+                                                                                                                                                                                                                                                                                                                                                                        case ds66
+                                                                                                                                                                                                                                                                                                                                                                        of {
+                                                                                                                                                                                                                                                                                                                                                                          [] ->
+                                                                                                                                                                                                                                                                                                                                                                            case lvl
+                                                                                                                                                                                                                                                                                                                                                                            of wild112 {
+                                                                                                                                                                                                                                                                                                                                                                            };
+                                                                                                                                                                                                                                                                                                                                                                          : j22
+                                                                                                                                                                                                                                                                                                                                                                            ds67 ->
+                                                                                                                                                                                                                                                                                                                                                                            case ds67
+                                                                                                                                                                                                                                                                                                                                                                            of {
+                                                                                                                                                                                                                                                                                                                                                                              [] ->
+                                                                                                                                                                                                                                                                                                                                                                                case lvl
+                                                                                                                                                                                                                                                                                                                                                                                of wild113 {
+                                                                                                                                                                                                                                                                                                                                                                                };
+                                                                                                                                                                                                                                                                                                                                                                              : k22
+                                                                                                                                                                                                                                                                                                                                                                                ds68 ->
+                                                                                                                                                                                                                                                                                                                                                                                case ds68
+                                                                                                                                                                                                                                                                                                                                                                                of {
+                                                                                                                                                                                                                                                                                                                                                                                  [] ->
+                                                                                                                                                                                                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                                                                                                    i22
+                                                                                                                                                                                                                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                                                                                                    j22
+                                                                                                                                                                                                                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                                                                                                                                                                                                                              k22)
+                                                                                                                                                                                                                                                                                                                                                                                    of wild114
+                                                                                                                                                                                                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                                                                                                                                                                                                    case (singletons-2.3.1:Data.Singletons.Prelude.Instances.$fSingKindNonEmpty_$cfromSing1
+                                                                                                                                                                                                                                                                                                                                                                                            @ Nat
+                                                                                                                                                                                                                                                                                                                                                                                            singletons-2.3.1:Data.Singletons.TypeLits.Internal.$fSingKindNat
+                                                                                                                                                                                                                                                                                                                                                                                            @ '[1,
+                                                                                                                                                                                                                                                                                                                                                                                                2,
+                                                                                                                                                                                                                                                                                                                                                                                                3]
+                                                                                                                                                                                                                                                                                                                                                                                            (lvl4
+                                                                                                                                                                                                                                                                                                                                                                                             `cast` <Co:79>))
+                                                                                                                                                                                                                                                                                                                                                                                         `cast` <Co:7>
+                                                                                                                                                                                                                                                                                                                                                                                    of {
+                                                                                                                                                                                                                                                                                                                                                                                      [] ->
+                                                                                                                                                                                                                                                                                                                                                                                        case lvl
+                                                                                                                                                                                                                                                                                                                                                                                        of wild116 {
+                                                                                                                                                                                                                                                                                                                                                                                        };
+                                                                                                                                                                                                                                                                                                                                                                                      : i23
+                                                                                                                                                                                                                                                                                                                                                                                        ds69 ->
+                                                                                                                                                                                                                                                                                                                                                                                        case ds69
+                                                                                                                                                                                                                                                                                                                                                                                        of {
+                                                                                                                                                                                                                                                                                                                                                                                          [] ->
+                                                                                                                                                                                                                                                                                                                                                                                            case lvl
+                                                                                                                                                                                                                                                                                                                                                                                            of wild117 {
+                                                                                                                                                                                                                                                                                                                                                                                            };
+                                                                                                                                                                                                                                                                                                                                                                                          : j23
+                                                                                                                                                                                                                                                                                                                                                                                            ds70 ->
+                                                                                                                                                                                                                                                                                                                                                                                            case ds70
+                                                                                                                                                                                                                                                                                                                                                                                            of {
+                                                                                                                                                                                                                                                                                                                                                                                              [] ->
+                                                                                                                                                                                                                                                                                                                                                                                                case lvl
+                                                                                                                                                                                                                                                                                                                                                                                                of wild118 {
+                                                                                                                                                                                                                                                                                                                                                                                                };
+                                                                                                                                                                                                                                                                                                                                                                                              : k23
+                                                                                                                                                                                                                                                                                                                                                                                                ds71 ->
+                                                                                                                                                                                                                                                                                                                                                                                                case ds71
+                                                                                                                                                                                                                                                                                                                                                                                                of {
+                                                                                                                                                                                                                                                                                                                                                                                                  [] ->
+                                                                                                                                                                                                                                                                                                                                                                                                    case integer-gmp-1.0.1.0:GHC.Integer.Type.doubleFromInteger
+                                                                                                                                                                                                                                                                                                                                                                                                           (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                                                                                                                              (integer-gmp-1.0.1.0:GHC.Integer.Type.plusInteger
+                                                                                                                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                                                                                                                    i23
+                                                                                                                                                                                                                                                                                                                                                                                                                    lvl1)
+                                                                                                                                                                                                                                                                                                                                                                                                                 (integer-gmp-1.0.1.0:GHC.Integer.Type.timesInteger
+                                                                                                                                                                                                                                                                                                                                                                                                                    j23
+                                                                                                                                                                                                                                                                                                                                                                                                                    lvl2))
+                                                                                                                                                                                                                                                                                                                                                                                                              k23)
+                                                                                                                                                                                                                                                                                                                                                                                                    of wild119
+                                                                                                                                                                                                                                                                                                                                                                                                    { __DEFAULT ->
+                                                                                                                                                                                                                                                                                                                                                                                                    (TensorInstances.Tensor'2'3'4'Float
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild4)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild9)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild14)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild19)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild24)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild29)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild34)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild39)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild44)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild49)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild54)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild59)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild64)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild69)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild74)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild79)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild84)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild89)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild94)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild99)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild104)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild109)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild114)
+                                                                                                                                                                                                                                                                                                                                                                                                       (GHC.Prim.double2Float#
+                                                                                                                                                                                                                                                                                                                                                                                                          wild119))
+                                                                                                                                                                                                                                                                                                                                                                                                    `cast` <Co:2>
+                                                                                                                                                                                                                                                                                                                                                                                                    };
+                                                                                                                                                                                                                                                                                                                                                                                                  : ipv
+                                                                                                                                                                                                                                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                                                                                                                                                                                                                                    case lvl
+                                                                                                                                                                                                                                                                                                                                                                                                    of wild119 {
+                                                                                                                                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                                                                                                                                }
+                                                                                                                                                                                                                                                                                                                                                                                            }
+                                                                                                                                                                                                                                                                                                                                                                                        }
+                                                                                                                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                                                                                                                    };
+                                                                                                                                                                                                                                                                                                                                                                                  : ipv
+                                                                                                                                                                                                                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                                                                                                                                                                                                                    case lvl
+                                                                                                                                                                                                                                                                                                                                                                                    of wild114 {
+                                                                                                                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                                                                                                                }
+                                                                                                                                                                                                                                                                                                                                                                            }
+                                                                                                                                                                                                                                                                                                                                                                        }
+                                                                                                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                                                                                                    };
+                                                                                                                                                                                                                                                                                                                                                                  : ipv
+                                                                                                                                                                                                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                                                                                                                                                                                                    case lvl
+                                                                                                                                                                                                                                                                                                                                                                    of wild109 {
+                                                                                                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                                                                                                }
+                                                                                                                                                                                                                                                                                                                                                            }
+                                                                                                                                                                                                                                                                                                                                                        }
+                                                                                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                                                                                    };
+                                                                                                                                                                                                                                                                                                                                                  : ipv
+                                                                                                                                                                                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                                                                                                                                                                                    case lvl
+                                                                                                                                                                                                                                                                                                                                                    of wild104 {
+                                                                                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                                                                                }
+                                                                                                                                                                                                                                                                                                                                            }
+                                                                                                                                                                                                                                                                                                                                        }
+                                                                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                                                                    };
+                                                                                                                                                                                                                                                                                                                                  : ipv
+                                                                                                                                                                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                                                                                                                                                                    case lvl
+                                                                                                                                                                                                                                                                                                                                    of wild99 {
+                                                                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                                                                }
+                                                                                                                                                                                                                                                                                                                            }
+                                                                                                                                                                                                                                                                                                                        }
+                                                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                                                    };
+                                                                                                                                                                                                                                                                                                                  : ipv
+                                                                                                                                                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                                                                                                                                                    case lvl
+                                                                                                                                                                                                                                                                                                                    of wild94 {
+                                                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                                                }
+                                                                                                                                                                                                                                                                                                            }
+                                                                                                                                                                                                                                                                                                        }
+                                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                                    };
+                                                                                                                                                                                                                                                                                                  : ipv
+                                                                                                                                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                                                                                                                                    case lvl
+                                                                                                                                                                                                                                                                                                    of wild89 {
+                                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                                }
+                                                                                                                                                                                                                                                                                            }
+                                                                                                                                                                                                                                                                                        }
+                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                    };
+                                                                                                                                                                                                                                                                                  : ipv
+                                                                                                                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                                                                                                                    case lvl
+                                                                                                                                                                                                                                                                                    of wild84 {
+                                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                                }
+                                                                                                                                                                                                                                                                            }
+                                                                                                                                                                                                                                                                        }
+                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                    };
+                                                                                                                                                                                                                                                                  : ipv
+                                                                                                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                                                                                                    case lvl
+                                                                                                                                                                                                                                                                    of wild79 {
+                                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                                }
+                                                                                                                                                                                                                                                            }
+                                                                                                                                                                                                                                                        }
+                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                    };
+                                                                                                                                                                                                                                                  : ipv
+                                                                                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                                                                                    case lvl
+                                                                                                                                                                                                                                                    of wild74 {
+                                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                                }
+                                                                                                                                                                                                                                            }
+                                                                                                                                                                                                                                        }
+                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                    };
+                                                                                                                                                                                                                                  : ipv
+                                                                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                                                                    case lvl
+                                                                                                                                                                                                                                    of wild69 {
+                                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                                }
+                                                                                                                                                                                                                            }
+                                                                                                                                                                                                                        }
+                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                    };
+                                                                                                                                                                                                                  : ipv
+                                                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                                                    case lvl
+                                                                                                                                                                                                                    of wild64 {
+                                                                                                                                                                                                                    }
+                                                                                                                                                                                                                }
+                                                                                                                                                                                                            }
+                                                                                                                                                                                                        }
+                                                                                                                                                                                                    }
+                                                                                                                                                                                                    };
+                                                                                                                                                                                                  : ipv
+                                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                                    case lvl
+                                                                                                                                                                                                    of wild59 {
+                                                                                                                                                                                                    }
+                                                                                                                                                                                                }
+                                                                                                                                                                                            }
+                                                                                                                                                                                        }
+                                                                                                                                                                                    }
+                                                                                                                                                                                    };
+                                                                                                                                                                                  : ipv
+                                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                                    case lvl
+                                                                                                                                                                                    of wild54 {
+                                                                                                                                                                                    }
+                                                                                                                                                                                }
+                                                                                                                                                                            }
+                                                                                                                                                                        }
+                                                                                                                                                                    }
+                                                                                                                                                                    };
+                                                                                                                                                                  : ipv
+                                                                                                                                                                    ipv1 ->
+                                                                                                                                                                    case lvl
+                                                                                                                                                                    of wild49 {
+                                                                                                                                                                    }
+                                                                                                                                                                }
+                                                                                                                                                            }
+                                                                                                                                                        }
+                                                                                                                                                    }
+                                                                                                                                                    };
+                                                                                                                                                  : ipv
+                                                                                                                                                    ipv1 ->
+                                                                                                                                                    case lvl
+                                                                                                                                                    of wild44 {
+                                                                                                                                                    }
+                                                                                                                                                }
+                                                                                                                                            }
+                                                                                                                                        }
+                                                                                                                                    }
+                                                                                                                                    };
+                                                                                                                                  : ipv
+                                                                                                                                    ipv1 ->
+                                                                                                                                    case lvl
+                                                                                                                                    of wild39 {
+                                                                                                                                    }
+                                                                                                                                }
+                                                                                                                            }
+                                                                                                                        }
+                                                                                                                    }
+                                                                                                                    };
+                                                                                                                  : ipv
+                                                                                                                    ipv1 ->
+                                                                                                                    case lvl
+                                                                                                                    of wild34 {
+                                                                                                                    }
+                                                                                                                }
+                                                                                                            }
+                                                                                                        }
+                                                                                                    }
+                                                                                                    };
+                                                                                                  : ipv
+                                                                                                    ipv1 ->
+                                                                                                    case lvl
+                                                                                                    of wild29 {
+                                                                                                    }
+                                                                                                }
+                                                                                            }
+                                                                                        }
+                                                                                    }
+                                                                                    };
+                                                                                  : ipv ipv1 ->
+                                                                                    case lvl
+                                                                                    of wild24 {
+                                                                                    }
+                                                                                }
+                                                                            }
+                                                                        }
+                                                                    }
+                                                                    };
+                                                                  : ipv ipv1 ->
+                                                                    case lvl of wild19 { }
+                                                                }
+                                                            }
+                                                        }
+                                                    }
+                                                    };
+                                                  : ipv ipv1 -> case lvl of wild14 { }
+                                                }
+                                            }
+                                        }
+                                    }
+                                    };
+                                  : ipv ipv1 -> case lvl of wild9 { }
+                                }
+                            }
+                        }
+                    }
+                    };
+                  : ipv ipv1 -> case lvl of wild4 { }
+                }
+            }
+        }
+    }
+
+
+ tests/CoreDump/Tensor/GenerateSing.hs view
@@ -0,0 +1,18 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.GenerateSing where
+
+import Data.Kind
+import Data.Singletons
+import Data.Tensor.Static
+import GHC.TypeLits
+import TensorInstances ()
+
+-- FIXME: Generates terrible Core possibly because of https://ghc.haskell.org/trac/ghc/ticket/14170
+generateSing_ :: Tensor '[2, 3, 4] Float
+generateSing_ =
+    generate @'[2, 3, 4] @Float @([Nat] -> Constraint) @SingI $ \p ->
+        case fromSing $ singByProxy p of
+            [i, j, k] -> fromIntegral $ i * 12 + j * 4 + k
+            _         -> undefined
+ tests/CoreDump/Tensor/GetSlice.dump-simpl.ghc821.golden view
@@ -0,0 +1,46 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:24.4695403 UTC
+
+Result size of Tidy Core
+  = {terms: 28, types: 69, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSlice.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.GetSlice.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSlice.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.GetSlice.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.GetSlice.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSlice.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.GetSlice.$trModule2 = "CoreDump.Tensor.GetSlice"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSlice.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.GetSlice.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.GetSlice.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSlice.$trModule :: GHC.Types.Module
+CoreDump.Tensor.GetSlice.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.GetSlice.$trModule3
+      CoreDump.Tensor.GetSlice.$trModule1
+
+-- RHS size: {terms: 13, types: 38, coercions: 3, joins: 0/0}
+getSlice_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 2, 2] Float
+getSlice_
+  = \ (x :: Tensor '[2, 3, 4] Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      (TensorInstances.Tensor'2'2'2'Float
+         dt dt1 dt4 dt5 dt12 dt13 dt16 dt17)
+      `cast` <Co:2>
+      }
+
+
+ tests/CoreDump/Tensor/GetSlice.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.GetSlice where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+getSlice_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 2, 2] Float
+getSlice_ = getSlice @'[0, 0, 0] @'[2, 2, 2]
+ tests/CoreDump/Tensor/GetSliceElems.dump-simpl.ghc821.golden view
@@ -0,0 +1,67 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:24.2793398 UTC
+
+Result size of Tidy Core
+  = {terms: 44, types: 67, coercions: 1, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSliceElems.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.GetSliceElems.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSliceElems.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.GetSliceElems.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.GetSliceElems.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSliceElems.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.GetSliceElems.$trModule2
+  = "CoreDump.Tensor.GetSliceElems"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSliceElems.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.GetSliceElems.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.GetSliceElems.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSliceElems.$trModule :: GHC.Types.Module
+CoreDump.Tensor.GetSliceElems.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.GetSliceElems.$trModule3
+      CoreDump.Tensor.GetSliceElems.$trModule1
+
+-- RHS size: {terms: 29, types: 47, coercions: 1, joins: 0/0}
+getSliceElems_ :: Tensor '[2, 3, 4] Float -> [Float]
+getSliceElems_
+  = \ (w :: Tensor '[2, 3, 4] Float) ->
+      case w `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float ww1 ww2 ww3 ww4 ww5 ww6 ww7
+                                           ww8 ww9 ww10 ww11 ww12 ww13 ww14 ww15 ww16 ww17 ww18 ww19
+                                           ww20 ww21 ww22 ww23 ww24 ->
+      GHC.Types.:
+        @ Float
+        (GHC.Types.F# ww1)
+        (GHC.Types.:
+           @ Float
+           (GHC.Types.F# ww2)
+           (GHC.Types.:
+              @ Float
+              (GHC.Types.F# ww5)
+              (GHC.Types.:
+                 @ Float
+                 (GHC.Types.F# ww6)
+                 (GHC.Types.:
+                    @ Float
+                    (GHC.Types.F# ww13)
+                    (GHC.Types.:
+                       @ Float
+                       (GHC.Types.F# ww14)
+                       (GHC.Types.:
+                          @ Float
+                          (GHC.Types.F# ww17)
+                          (GHC.Types.:
+                             @ Float (GHC.Types.F# ww18) (GHC.Types.[] @ Float))))))))
+      }
+
+
+ tests/CoreDump/Tensor/GetSliceElems.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.GetSliceElems where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+getSliceElems_ :: Tensor '[2, 3, 4] Float -> [Float]
+getSliceElems_ = getSliceElems @'[0, 0, 0] @'[2, 2, 2]
+ tests/CoreDump/Tensor/GetSubtensor.dump-simpl.ghc821.golden view
@@ -0,0 +1,47 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:24.1401379 UTC
+
+Result size of Tidy Core
+  = {terms: 32, types: 66, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSubtensor.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.GetSubtensor.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSubtensor.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.GetSubtensor.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.GetSubtensor.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSubtensor.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.GetSubtensor.$trModule2
+  = "CoreDump.Tensor.GetSubtensor"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSubtensor.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.GetSubtensor.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.GetSubtensor.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSubtensor.$trModule :: GHC.Types.Module
+CoreDump.Tensor.GetSubtensor.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.GetSubtensor.$trModule3
+      CoreDump.Tensor.GetSubtensor.$trModule1
+
+-- RHS size: {terms: 17, types: 38, coercions: 3, joins: 0/0}
+getSubtensor_ :: Tensor '[2, 3, 4] Float -> Tensor '[3, 4] Float
+getSubtensor_
+  = \ (x :: Tensor '[2, 3, 4] Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      (TensorInstances.Tensor'3'4'Float
+         dt dt1 dt2 dt3 dt4 dt5 dt6 dt7 dt8 dt9 dt10 dt11)
+      `cast` <Co:2>
+      }
+
+
+ tests/CoreDump/Tensor/GetSubtensor.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.GetSubtensor where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+getSubtensor_ :: Tensor '[2, 3, 4] Float -> Tensor '[3, 4] Float
+getSubtensor_ = getSubtensor @'[0]
+ tests/CoreDump/Tensor/GetSubtensorElems.dump-simpl.ghc821.golden view
@@ -0,0 +1,81 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:23.9211254 UTC
+
+Result size of Tidy Core
+  = {terms: 56, types: 71, coercions: 1, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSubtensorElems.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.GetSubtensorElems.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSubtensorElems.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.GetSubtensorElems.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.GetSubtensorElems.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSubtensorElems.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.GetSubtensorElems.$trModule2
+  = "CoreDump.Tensor.GetSubtensorElems"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSubtensorElems.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.GetSubtensorElems.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.GetSubtensorElems.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.GetSubtensorElems.$trModule :: GHC.Types.Module
+CoreDump.Tensor.GetSubtensorElems.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.GetSubtensorElems.$trModule3
+      CoreDump.Tensor.GetSubtensorElems.$trModule1
+
+-- RHS size: {terms: 41, types: 51, coercions: 1, joins: 0/0}
+getSubtensorElems_ :: Tensor '[2, 3, 4] Float -> [Float]
+getSubtensorElems_
+  = \ (x :: Tensor '[2, 3, 4] Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      GHC.Types.:
+        @ Float
+        (GHC.Types.F# dt)
+        (GHC.Types.:
+           @ Float
+           (GHC.Types.F# dt1)
+           (GHC.Types.:
+              @ Float
+              (GHC.Types.F# dt2)
+              (GHC.Types.:
+                 @ Float
+                 (GHC.Types.F# dt3)
+                 (GHC.Types.:
+                    @ Float
+                    (GHC.Types.F# dt4)
+                    (GHC.Types.:
+                       @ Float
+                       (GHC.Types.F# dt5)
+                       (GHC.Types.:
+                          @ Float
+                          (GHC.Types.F# dt6)
+                          (GHC.Types.:
+                             @ Float
+                             (GHC.Types.F# dt7)
+                             (GHC.Types.:
+                                @ Float
+                                (GHC.Types.F# dt8)
+                                (GHC.Types.:
+                                   @ Float
+                                   (GHC.Types.F# dt9)
+                                   (GHC.Types.:
+                                      @ Float
+                                      (GHC.Types.F# dt10)
+                                      (GHC.Types.:
+                                         @ Float
+                                         (GHC.Types.F# dt11)
+                                         (GHC.Types.[] @ Float))))))))))))
+      }
+
+
+ tests/CoreDump/Tensor/GetSubtensorElems.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.GetSubtensorElems where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+getSubtensorElems_ :: Tensor '[2, 3, 4] Float -> [Float]
+getSubtensorElems_ = getSubtensorElems @'[0]
+ tests/CoreDump/Tensor/MapSliceElems.dump-simpl.ghc821.golden view
@@ -0,0 +1,88 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:23.7271143 UTC
+
+Result size of Tidy Core
+  = {terms: 85, types: 89, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.MapSliceElems.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.MapSliceElems.$trModule2
+  = "CoreDump.Tensor.MapSliceElems"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.MapSliceElems.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.MapSliceElems.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.MapSliceElems.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.MapSliceElems.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.MapSliceElems.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.MapSliceElems.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.MapSliceElems.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.MapSliceElems.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.MapSliceElems.$trModule :: GHC.Types.Module
+CoreDump.Tensor.MapSliceElems.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.MapSliceElems.$trModule3
+      CoreDump.Tensor.MapSliceElems.$trModule1
+
+-- RHS size: {terms: 70, types: 56, coercions: 3, joins: 0/0}
+mapSliceElems_
+  :: Tensor '[2, 3, 4] Float
+     -> (Float -> Float) -> Tensor '[2, 3, 4] Float
+mapSliceElems_
+  = \ (t :: Tensor '[2, 3, 4] Float) (f :: Float -> Float) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case f (GHC.Types.F# dt6) of { GHC.Types.F# dt30 ->
+      case f (GHC.Types.F# dt7) of { GHC.Types.F# dt32 ->
+      case f (GHC.Types.F# dt10) of { GHC.Types.F# dt34 ->
+      case f (GHC.Types.F# dt11) of { GHC.Types.F# dt36 ->
+      case f (GHC.Types.F# dt18) of { GHC.Types.F# dt38 ->
+      case f (GHC.Types.F# dt19) of { GHC.Types.F# dt40 ->
+      case f (GHC.Types.F# dt22) of { GHC.Types.F# dt42 ->
+      case f (GHC.Types.F# dt23) of { GHC.Types.F# dt44 ->
+      (TensorInstances.Tensor'2'3'4'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt4
+         dt5
+         dt30
+         dt32
+         dt8
+         dt9
+         dt34
+         dt36
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt17
+         dt38
+         dt40
+         dt20
+         dt21
+         dt42
+         dt44)
+      `cast` <Co:2>
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+
+
+ tests/CoreDump/Tensor/MapSliceElems.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.MapSliceElems where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+mapSliceElems_ :: Tensor '[2, 3, 4] Float -> (Float -> Float) -> Tensor '[2, 3, 4] Float
+mapSliceElems_ = mapSliceElems @'[0, 1, 2] @'[2, 2, 2]
+ tests/CoreDump/Tensor/MapSubtensorElems.dump-simpl.ghc821.golden view
@@ -0,0 +1,96 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:21.8608525 UTC
+
+Result size of Tidy Core
+  = {terms: 105, types: 97, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.MapSubtensorElems.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.MapSubtensorElems.$trModule2
+  = "CoreDump.Tensor.MapSubtensorElems"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.MapSubtensorElems.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.MapSubtensorElems.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.MapSubtensorElems.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.MapSubtensorElems.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.MapSubtensorElems.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.MapSubtensorElems.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.MapSubtensorElems.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.MapSubtensorElems.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.MapSubtensorElems.$trModule :: GHC.Types.Module
+CoreDump.Tensor.MapSubtensorElems.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.MapSubtensorElems.$trModule3
+      CoreDump.Tensor.MapSubtensorElems.$trModule1
+
+-- RHS size: {terms: 90, types: 64, coercions: 3, joins: 0/0}
+mapSubtensorElems_
+  :: Tensor '[2, 3, 4] Float
+     -> (Float -> Float) -> Tensor '[2, 3, 4] Float
+mapSubtensorElems_
+  = \ (t :: Tensor '[2, 3, 4] Float) (f :: Float -> Float) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case f (GHC.Types.F# dt) of { GHC.Types.F# dt30 ->
+      case f (GHC.Types.F# dt1) of { GHC.Types.F# dt32 ->
+      case f (GHC.Types.F# dt2) of { GHC.Types.F# dt34 ->
+      case f (GHC.Types.F# dt3) of { GHC.Types.F# dt36 ->
+      case f (GHC.Types.F# dt4) of { GHC.Types.F# dt38 ->
+      case f (GHC.Types.F# dt5) of { GHC.Types.F# dt40 ->
+      case f (GHC.Types.F# dt6) of { GHC.Types.F# dt42 ->
+      case f (GHC.Types.F# dt7) of { GHC.Types.F# dt44 ->
+      case f (GHC.Types.F# dt8) of { GHC.Types.F# dt46 ->
+      case f (GHC.Types.F# dt9) of { GHC.Types.F# dt48 ->
+      case f (GHC.Types.F# dt10) of { GHC.Types.F# dt50 ->
+      case f (GHC.Types.F# dt11) of { GHC.Types.F# dt52 ->
+      (TensorInstances.Tensor'2'3'4'Float
+         dt30
+         dt32
+         dt34
+         dt36
+         dt38
+         dt40
+         dt42
+         dt44
+         dt46
+         dt48
+         dt50
+         dt52
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt17
+         dt18
+         dt19
+         dt20
+         dt21
+         dt22
+         dt23)
+      `cast` <Co:2>
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+
+
+ tests/CoreDump/Tensor/MapSubtensorElems.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.MapSubtensorElems where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+mapSubtensorElems_ :: Tensor '[2, 3, 4] Float -> (Float -> Float) -> Tensor '[2, 3, 4] Float
+mapSubtensorElems_ = mapSubtensorElems @'[0]
+ tests/CoreDump/Tensor/OfoldMap.dump-simpl.ghc821.golden view
@@ -0,0 +1,148 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:19.6918236 UTC
+
+Result size of Tidy Core
+  = {terms: 144, types: 94, coercions: 1, joins: 0/0}
+
+-- RHS size: {terms: 129, types: 69, coercions: 1, joins: 0/0}
+ofoldMap_
+  :: forall w.
+     Monoid w =>
+     (Float -> w) -> Tensor '[2, 3, 4] Float -> w
+ofoldMap_
+  = \ (@ w)
+      ($dMonoid :: Monoid w)
+      (f :: Float -> w)
+      (eta :: Tensor '[2, 3, 4] Float) ->
+      case eta `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      mappend
+        @ w
+        $dMonoid
+        (f (GHC.Types.F# dt))
+        (mappend
+           @ w
+           $dMonoid
+           (f (GHC.Types.F# dt1))
+           (mappend
+              @ w
+              $dMonoid
+              (f (GHC.Types.F# dt2))
+              (mappend
+                 @ w
+                 $dMonoid
+                 (f (GHC.Types.F# dt3))
+                 (mappend
+                    @ w
+                    $dMonoid
+                    (f (GHC.Types.F# dt4))
+                    (mappend
+                       @ w
+                       $dMonoid
+                       (f (GHC.Types.F# dt5))
+                       (mappend
+                          @ w
+                          $dMonoid
+                          (f (GHC.Types.F# dt6))
+                          (mappend
+                             @ w
+                             $dMonoid
+                             (f (GHC.Types.F# dt7))
+                             (mappend
+                                @ w
+                                $dMonoid
+                                (f (GHC.Types.F# dt8))
+                                (mappend
+                                   @ w
+                                   $dMonoid
+                                   (f (GHC.Types.F# dt9))
+                                   (mappend
+                                      @ w
+                                      $dMonoid
+                                      (f (GHC.Types.F# dt10))
+                                      (mappend
+                                         @ w
+                                         $dMonoid
+                                         (f (GHC.Types.F# dt11))
+                                         (mappend
+                                            @ w
+                                            $dMonoid
+                                            (f (GHC.Types.F# dt12))
+                                            (mappend
+                                               @ w
+                                               $dMonoid
+                                               (f (GHC.Types.F# dt13))
+                                               (mappend
+                                                  @ w
+                                                  $dMonoid
+                                                  (f (GHC.Types.F# dt14))
+                                                  (mappend
+                                                     @ w
+                                                     $dMonoid
+                                                     (f (GHC.Types.F# dt15))
+                                                     (mappend
+                                                        @ w
+                                                        $dMonoid
+                                                        (f (GHC.Types.F# dt16))
+                                                        (mappend
+                                                           @ w
+                                                           $dMonoid
+                                                           (f (GHC.Types.F# dt17))
+                                                           (mappend
+                                                              @ w
+                                                              $dMonoid
+                                                              (f (GHC.Types.F# dt18))
+                                                              (mappend
+                                                                 @ w
+                                                                 $dMonoid
+                                                                 (f (GHC.Types.F# dt19))
+                                                                 (mappend
+                                                                    @ w
+                                                                    $dMonoid
+                                                                    (f (GHC.Types.F# dt20))
+                                                                    (mappend
+                                                                       @ w
+                                                                       $dMonoid
+                                                                       (f (GHC.Types.F# dt21))
+                                                                       (mappend
+                                                                          @ w
+                                                                          $dMonoid
+                                                                          (f (GHC.Types.F# dt22))
+                                                                          (mappend
+                                                                             @ w
+                                                                             $dMonoid
+                                                                             (f (GHC.Types.F# dt23))
+                                                                             (mempty
+                                                                                @ w
+                                                                                $dMonoid))))))))))))))))))))))))
+      }
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OfoldMap.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.OfoldMap.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OfoldMap.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.OfoldMap.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.OfoldMap.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OfoldMap.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.OfoldMap.$trModule2 = "CoreDump.Tensor.OfoldMap"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OfoldMap.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.OfoldMap.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.OfoldMap.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OfoldMap.$trModule :: GHC.Types.Module
+CoreDump.Tensor.OfoldMap.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.OfoldMap.$trModule3
+      CoreDump.Tensor.OfoldMap.$trModule1
+
+
+ tests/CoreDump/Tensor/OfoldMap.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.OfoldMap where
+
+import Data.Tensor.Static
+import Data.MonoTraversable
+import TensorInstances ()
+
+ofoldMap_ :: (Monoid w) => (Float -> w) -> Tensor '[2, 3, 4] Float -> w
+ofoldMap_ f = ofoldMap f
+ tests/CoreDump/Tensor/Ofoldl1ExStrict.dump-simpl.ghc821.golden view
@@ -0,0 +1,71 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:19.5358233 UTC
+
+Result size of Tidy Core
+  = {terms: 91, types: 63, coercions: 1, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldl1ExStrict.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Ofoldl1ExStrict.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldl1ExStrict.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Ofoldl1ExStrict.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Ofoldl1ExStrict.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldl1ExStrict.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Ofoldl1ExStrict.$trModule2
+  = "CoreDump.Tensor.Ofoldl1ExStrict"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldl1ExStrict.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Ofoldl1ExStrict.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Ofoldl1ExStrict.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldl1ExStrict.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Ofoldl1ExStrict.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Ofoldl1ExStrict.$trModule3
+      CoreDump.Tensor.Ofoldl1ExStrict.$trModule1
+
+-- RHS size: {terms: 76, types: 41, coercions: 1, joins: 0/0}
+ofoldl1ExStrict_
+  :: (Float -> Float -> Float) -> Tensor '[2, 3, 4] Float -> Float
+ofoldl1ExStrict_
+  = \ (f :: Float -> Float -> Float)
+      (x :: Tensor '[2, 3, 4] Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (GHC.Types.F#
+                                                                             dt23)
+                                                                          (GHC.Types.F# dt22))
+                                                                       (GHC.Types.F# dt21))
+                                                                    (GHC.Types.F# dt20))
+                                                                 (GHC.Types.F# dt19))
+                                                              (GHC.Types.F# dt18))
+                                                           (GHC.Types.F# dt17))
+                                                        (GHC.Types.F# dt16))
+                                                     (GHC.Types.F# dt15))
+                                                  (GHC.Types.F# dt14))
+                                               (GHC.Types.F# dt13))
+                                            (GHC.Types.F# dt12))
+                                         (GHC.Types.F# dt11))
+                                      (GHC.Types.F# dt10))
+                                   (GHC.Types.F# dt9))
+                                (GHC.Types.F# dt8))
+                             (GHC.Types.F# dt7))
+                          (GHC.Types.F# dt6))
+                       (GHC.Types.F# dt5))
+                    (GHC.Types.F# dt4))
+                 (GHC.Types.F# dt3))
+              (GHC.Types.F# dt2))
+           (GHC.Types.F# dt1))
+        (GHC.Types.F# dt)
+      }
+
+
+ tests/CoreDump/Tensor/Ofoldl1ExStrict.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Ofoldl1ExStrict where
+
+import Data.Tensor.Static
+import Data.MonoTraversable
+import TensorInstances ()
+
+ofoldl1ExStrict_ :: (Float -> Float -> Float) -> Tensor '[2, 3, 4] Float -> Float
+ofoldl1ExStrict_ f = ofoldl1Ex' f
+ tests/CoreDump/Tensor/OfoldlStrict.dump-simpl.ghc821.golden view
@@ -0,0 +1,73 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:19.3954231 UTC
+
+Result size of Tidy Core
+  = {terms: 95, types: 69, coercions: 1, joins: 0/0}
+
+-- RHS size: {terms: 80, types: 44, coercions: 1, joins: 0/0}
+ofoldlStrict_
+  :: forall a. (a -> Float -> a) -> a -> Tensor '[2, 3, 4] Float -> a
+ofoldlStrict_
+  = \ (@ a)
+      (f :: a -> Float -> a)
+      (z :: a)
+      (x :: Tensor '[2, 3, 4] Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f z
+                                                                             (GHC.Types.F# dt23))
+                                                                          (GHC.Types.F# dt22))
+                                                                       (GHC.Types.F# dt21))
+                                                                    (GHC.Types.F# dt20))
+                                                                 (GHC.Types.F# dt19))
+                                                              (GHC.Types.F# dt18))
+                                                           (GHC.Types.F# dt17))
+                                                        (GHC.Types.F# dt16))
+                                                     (GHC.Types.F# dt15))
+                                                  (GHC.Types.F# dt14))
+                                               (GHC.Types.F# dt13))
+                                            (GHC.Types.F# dt12))
+                                         (GHC.Types.F# dt11))
+                                      (GHC.Types.F# dt10))
+                                   (GHC.Types.F# dt9))
+                                (GHC.Types.F# dt8))
+                             (GHC.Types.F# dt7))
+                          (GHC.Types.F# dt6))
+                       (GHC.Types.F# dt5))
+                    (GHC.Types.F# dt4))
+                 (GHC.Types.F# dt3))
+              (GHC.Types.F# dt2))
+           (GHC.Types.F# dt1))
+        (GHC.Types.F# dt)
+      }
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OfoldlStrict.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.OfoldlStrict.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OfoldlStrict.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.OfoldlStrict.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.OfoldlStrict.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OfoldlStrict.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.OfoldlStrict.$trModule2
+  = "CoreDump.Tensor.OfoldlStrict"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OfoldlStrict.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.OfoldlStrict.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.OfoldlStrict.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OfoldlStrict.$trModule :: GHC.Types.Module
+CoreDump.Tensor.OfoldlStrict.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.OfoldlStrict.$trModule3
+      CoreDump.Tensor.OfoldlStrict.$trModule1
+
+
+ tests/CoreDump/Tensor/OfoldlStrict.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.OfoldlStrict where
+
+import Data.Tensor.Static
+import Data.MonoTraversable
+import TensorInstances ()
+
+ofoldlStrict_ :: (a -> Float -> a) -> a -> Tensor '[2, 3, 4] Float -> a
+ofoldlStrict_ f z = ofoldl' f z
+ tests/CoreDump/Tensor/Ofoldr.dump-simpl.ghc821.golden view
@@ -0,0 +1,71 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:19.2520227 UTC
+
+Result size of Tidy Core
+  = {terms: 95, types: 69, coercions: 1, joins: 0/0}
+
+-- RHS size: {terms: 80, types: 44, coercions: 1, joins: 0/0}
+ofoldr_
+  :: forall b. (Float -> b -> b) -> b -> Tensor '[2, 3, 4] Float -> b
+ofoldr_
+  = \ (@ b)
+      (f :: Float -> b -> b)
+      (z :: b)
+      (x :: Tensor '[2, 3, 4] Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      f (GHC.Types.F# dt)
+        (f (GHC.Types.F# dt1)
+           (f (GHC.Types.F# dt2)
+              (f (GHC.Types.F# dt3)
+                 (f (GHC.Types.F# dt4)
+                    (f (GHC.Types.F# dt5)
+                       (f (GHC.Types.F# dt6)
+                          (f (GHC.Types.F# dt7)
+                             (f (GHC.Types.F# dt8)
+                                (f (GHC.Types.F# dt9)
+                                   (f (GHC.Types.F# dt10)
+                                      (f (GHC.Types.F# dt11)
+                                         (f (GHC.Types.F# dt12)
+                                            (f (GHC.Types.F# dt13)
+                                               (f (GHC.Types.F# dt14)
+                                                  (f (GHC.Types.F# dt15)
+                                                     (f (GHC.Types.F# dt16)
+                                                        (f (GHC.Types.F# dt17)
+                                                           (f (GHC.Types.F# dt18)
+                                                              (f (GHC.Types.F# dt19)
+                                                                 (f (GHC.Types.F# dt20)
+                                                                    (f (GHC.Types.F# dt21)
+                                                                       (f (GHC.Types.F# dt22)
+                                                                          (f (GHC.Types.F# dt23)
+                                                                             z)))))))))))))))))))))))
+      }
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldr.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Ofoldr.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldr.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Ofoldr.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Ofoldr.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldr.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Ofoldr.$trModule2 = "CoreDump.Tensor.Ofoldr"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldr.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Ofoldr.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Ofoldr.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldr.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Ofoldr.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Ofoldr.$trModule3 CoreDump.Tensor.Ofoldr.$trModule1
+
+
+ tests/CoreDump/Tensor/Ofoldr.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Ofoldr where
+
+import Data.Tensor.Static
+import Data.MonoTraversable
+import TensorInstances ()
+
+ofoldr_ :: (Float -> b -> b) -> b -> Tensor '[2, 3, 4] Float -> b
+ofoldr_ f z = ofoldr f z
+ tests/CoreDump/Tensor/Ofoldr1Ex.dump-simpl.ghc821.golden view
@@ -0,0 +1,70 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:19.0990182 UTC
+
+Result size of Tidy Core
+  = {terms: 91, types: 63, coercions: 1, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldr1Ex.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Ofoldr1Ex.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldr1Ex.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Ofoldr1Ex.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Ofoldr1Ex.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldr1Ex.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Ofoldr1Ex.$trModule2 = "CoreDump.Tensor.Ofoldr1Ex"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldr1Ex.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Ofoldr1Ex.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Ofoldr1Ex.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ofoldr1Ex.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Ofoldr1Ex.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Ofoldr1Ex.$trModule3
+      CoreDump.Tensor.Ofoldr1Ex.$trModule1
+
+-- RHS size: {terms: 76, types: 41, coercions: 1, joins: 0/0}
+ofoldr1Ex_
+  :: (Float -> Float -> Float) -> Tensor '[2, 3, 4] Float -> Float
+ofoldr1Ex_
+  = \ (f :: Float -> Float -> Float)
+      (x :: Tensor '[2, 3, 4] Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      f (GHC.Types.F# dt)
+        (f (GHC.Types.F# dt1)
+           (f (GHC.Types.F# dt2)
+              (f (GHC.Types.F# dt3)
+                 (f (GHC.Types.F# dt4)
+                    (f (GHC.Types.F# dt5)
+                       (f (GHC.Types.F# dt6)
+                          (f (GHC.Types.F# dt7)
+                             (f (GHC.Types.F# dt8)
+                                (f (GHC.Types.F# dt9)
+                                   (f (GHC.Types.F# dt10)
+                                      (f (GHC.Types.F# dt11)
+                                         (f (GHC.Types.F# dt12)
+                                            (f (GHC.Types.F# dt13)
+                                               (f (GHC.Types.F# dt14)
+                                                  (f (GHC.Types.F# dt15)
+                                                     (f (GHC.Types.F# dt16)
+                                                        (f (GHC.Types.F# dt17)
+                                                           (f (GHC.Types.F# dt18)
+                                                              (f (GHC.Types.F# dt19)
+                                                                 (f (GHC.Types.F# dt20)
+                                                                    (f (GHC.Types.F# dt21)
+                                                                       (f (GHC.Types.F# dt22)
+                                                                          (GHC.Types.F#
+                                                                             dt23)))))))))))))))))))))))
+      }
+
+
+ tests/CoreDump/Tensor/Ofoldr1Ex.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Ofoldr1Ex where
+
+import Data.Tensor.Static
+import Data.MonoTraversable
+import TensorInstances ()
+
+ofoldr1Ex_ :: (Float -> Float -> Float) -> Tensor '[2, 3, 4] Float -> Float
+ofoldr1Ex_ f = ofoldr1Ex f
+ tests/CoreDump/Tensor/Omap.dump-simpl.ghc821.golden view
@@ -0,0 +1,118 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:18.9598163 UTC
+
+Result size of Tidy Core
+  = {terms: 165, types: 121, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Omap.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Omap.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Omap.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Omap.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Omap.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Omap.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Omap.$trModule2 = "CoreDump.Tensor.Omap"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Omap.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Omap.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Omap.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Omap.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Omap.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Omap.$trModule3 CoreDump.Tensor.Omap.$trModule1
+
+-- RHS size: {terms: 150, types: 88, coercions: 3, joins: 0/0}
+omap_
+  :: (Float -> Float)
+     -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+omap_
+  = \ (f :: Float -> Float) (x :: Tensor '[2, 3, 4] Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case f (GHC.Types.F# dt) of { GHC.Types.F# dt30 ->
+      case f (GHC.Types.F# dt1) of { GHC.Types.F# dt32 ->
+      case f (GHC.Types.F# dt2) of { GHC.Types.F# dt34 ->
+      case f (GHC.Types.F# dt3) of { GHC.Types.F# dt36 ->
+      case f (GHC.Types.F# dt4) of { GHC.Types.F# dt38 ->
+      case f (GHC.Types.F# dt5) of { GHC.Types.F# dt40 ->
+      case f (GHC.Types.F# dt6) of { GHC.Types.F# dt42 ->
+      case f (GHC.Types.F# dt7) of { GHC.Types.F# dt44 ->
+      case f (GHC.Types.F# dt8) of { GHC.Types.F# dt46 ->
+      case f (GHC.Types.F# dt9) of { GHC.Types.F# dt48 ->
+      case f (GHC.Types.F# dt10) of { GHC.Types.F# dt50 ->
+      case f (GHC.Types.F# dt11) of { GHC.Types.F# dt52 ->
+      case f (GHC.Types.F# dt12) of { GHC.Types.F# dt54 ->
+      case f (GHC.Types.F# dt13) of { GHC.Types.F# dt56 ->
+      case f (GHC.Types.F# dt14) of { GHC.Types.F# dt58 ->
+      case f (GHC.Types.F# dt15) of { GHC.Types.F# dt60 ->
+      case f (GHC.Types.F# dt16) of { GHC.Types.F# dt62 ->
+      case f (GHC.Types.F# dt17) of { GHC.Types.F# dt64 ->
+      case f (GHC.Types.F# dt18) of { GHC.Types.F# dt66 ->
+      case f (GHC.Types.F# dt19) of { GHC.Types.F# dt68 ->
+      case f (GHC.Types.F# dt20) of { GHC.Types.F# dt70 ->
+      case f (GHC.Types.F# dt21) of { GHC.Types.F# dt72 ->
+      case f (GHC.Types.F# dt22) of { GHC.Types.F# dt74 ->
+      case f (GHC.Types.F# dt23) of { GHC.Types.F# dt76 ->
+      (TensorInstances.Tensor'2'3'4'Float
+         dt30
+         dt32
+         dt34
+         dt36
+         dt38
+         dt40
+         dt42
+         dt44
+         dt46
+         dt48
+         dt50
+         dt52
+         dt54
+         dt56
+         dt58
+         dt60
+         dt62
+         dt64
+         dt66
+         dt68
+         dt70
+         dt72
+         dt74
+         dt76)
+      `cast` <Co:2>
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Omap.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Omap where
+
+import Data.Tensor.Static
+import Data.MonoTraversable
+import TensorInstances ()
+
+omap_ :: (Float -> Float) -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+omap_ f = omap f
+ tests/CoreDump/Tensor/Ounzip.dump-simpl.ghc821.golden view
@@ -0,0 +1,786 @@+
+==================== Tidy Core ====================
+2017-09-13 23:36:40.8606438 UTC
+
+Result size of Tidy Core
+  = {terms: 715, types: 976, coercions: 8, joins: 0/1}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ounzip.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Ounzip.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ounzip.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Ounzip.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Ounzip.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ounzip.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Ounzip.$trModule2 = "CoreDump.Tensor.Ounzip"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ounzip.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Ounzip.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Ounzip.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ounzip.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Ounzip.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Ounzip.$trModule3 CoreDump.Tensor.Ounzip.$trModule1
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl :: GHC.Prim.Addr#
+lvl = "error"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl1 :: [Char]
+lvl1 = GHC.CString.unpackCString# lvl
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl2 :: GHC.Prim.Addr#
+lvl2 = "static-tensor-0.1.0.0-1bgjq3JOZMoDpQl5pqUrpL"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl3 :: [Char]
+lvl3 = GHC.CString.unpackCString# lvl2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl4 :: GHC.Prim.Addr#
+lvl4 = "Data.List.Unrolled"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl5 :: [Char]
+lvl5 = GHC.CString.unpackCString# lvl4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl6 :: GHC.Prim.Addr#
+lvl6 = "src\\Data\\List\\Unrolled.hs"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl7 :: [Char]
+lvl7 = GHC.CString.unpackCString# lvl6
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl8 :: Int
+lvl8 = GHC.Types.I# 185#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl9 :: Int
+lvl9 = GHC.Types.I# 22#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl10 :: Int
+lvl10 = GHC.Types.I# 69#
+
+-- RHS size: {terms: 8, types: 0, coercions: 0, joins: 0/0}
+lvl11 :: GHC.Stack.Types.SrcLoc
+lvl11 = GHC.Stack.Types.SrcLoc lvl3 lvl5 lvl7 lvl8 lvl9 lvl8 lvl10
+
+-- RHS size: {terms: 4, types: 0, coercions: 0, joins: 0/0}
+lvl12 :: GHC.Stack.Types.CallStack
+lvl12
+  = GHC.Stack.Types.PushCallStack
+      lvl1 lvl11 GHC.Stack.Types.EmptyCallStack
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl13 :: GHC.Prim.Addr#
+lvl13 = "unzip: Not enough elements in the list."#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl14 :: [Char]
+lvl14 = GHC.CString.unpackCString# lvl13
+
+-- RHS size: {terms: 3, types: 6, coercions: 4, joins: 0/0}
+lvl15 :: ([Float], [Float])
+lvl15
+  = error
+      @ 'GHC.Types.LiftedRep
+      @ ([Float], [Float])
+      (lvl12 `cast` <Co:4>)
+      lvl14
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl16 :: [Char]
+lvl16
+  = GHC.CString.unpackCString# CoreDump.Tensor.Ounzip.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl17 :: GHC.Prim.Addr#
+lvl17 = "TensorInstances"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl18 :: [Char]
+lvl18 = GHC.CString.unpackCString# lvl17
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl19 :: GHC.Prim.Addr#
+lvl19 = "tests\\TensorInstances.hs"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl20 :: [Char]
+lvl20 = GHC.CString.unpackCString# lvl19
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl21 :: Int
+lvl21 = GHC.Types.I# 40#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl22 :: Int
+lvl22 = GHC.Types.I# 3#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl23 :: Int
+lvl23 = GHC.Types.I# 51#
+
+-- RHS size: {terms: 8, types: 0, coercions: 0, joins: 0/0}
+lvl24 :: GHC.Stack.Types.SrcLoc
+lvl24
+  = GHC.Stack.Types.SrcLoc lvl16 lvl18 lvl20 lvl21 lvl22 lvl21 lvl23
+
+-- RHS size: {terms: 4, types: 0, coercions: 0, joins: 0/0}
+lvl25 :: GHC.Stack.Types.CallStack
+lvl25
+  = GHC.Stack.Types.PushCallStack
+      lvl1 lvl24 GHC.Stack.Types.EmptyCallStack
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+lvl26 :: GHC.Prim.Addr#
+lvl26 = "Not enough elements to build a Tensor of shape [2,3,4]"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl27 :: [Char]
+lvl27 = GHC.CString.unpackCString# lvl26
+
+-- RHS size: {terms: 4, types: 15, coercions: 4, joins: 0/0}
+fail20 :: GHC.Prim.Void# -> Tensor '[2, 3, 4] Float
+fail20
+  = \ _ ->
+      error
+        @ 'GHC.Types.LiftedRep
+        @ (Tensor '[2, 3, 4] Float)
+        (lvl25 `cast` <Co:4>)
+        lvl27
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+lvl28 :: Tensor '[2, 3, 4] Float
+lvl28 = fail20 GHC.Prim.void#
+
+-- RHS size: {terms: 590, types: 733, coercions: 0, joins: 0/1}
+CoreDump.Tensor.Ounzip.$wounzip_
+  :: [(Float, Float)]
+     -> (# Tensor '[2, 3, 4] Float, Tensor '[2, 3, 4] Float #)
+CoreDump.Tensor.Ounzip.$wounzip_
+  = \ (w :: [(Float, Float)]) ->
+      let {
+        ds :: ([Float], [Float])
+        ds
+          = case w of {
+              [] -> lvl15;
+              : x xs ->
+                case x of { (a1, b1) ->
+                case xs of {
+                  [] -> lvl15;
+                  : x1 xs1 ->
+                    case x1 of { (a2, b2) ->
+                    case xs1 of {
+                      [] -> lvl15;
+                      : x2 xs2 ->
+                        case x2 of { (a3, b3) ->
+                        case xs2 of {
+                          [] -> lvl15;
+                          : x3 xs3 ->
+                            case x3 of { (a4, b4) ->
+                            case xs3 of {
+                              [] -> lvl15;
+                              : x4 xs4 ->
+                                case x4 of { (a5, b5) ->
+                                case xs4 of {
+                                  [] -> lvl15;
+                                  : x5 xs5 ->
+                                    case x5 of { (a6, b6) ->
+                                    case xs5 of {
+                                      [] -> lvl15;
+                                      : x6 xs6 ->
+                                        case x6 of { (a7, b7) ->
+                                        case xs6 of {
+                                          [] -> lvl15;
+                                          : x7 xs7 ->
+                                            case x7 of { (a8, b8) ->
+                                            case xs7 of {
+                                              [] -> lvl15;
+                                              : x8 xs8 ->
+                                                case x8 of { (a9, b9) ->
+                                                case xs8 of {
+                                                  [] -> lvl15;
+                                                  : x9 xs9 ->
+                                                    case x9 of { (a10, b10) ->
+                                                    case xs9 of {
+                                                      [] -> lvl15;
+                                                      : x10 xs10 ->
+                                                        case x10 of { (a11, b11) ->
+                                                        case xs10 of {
+                                                          [] -> lvl15;
+                                                          : x11 xs11 ->
+                                                            case x11 of { (a12, b12) ->
+                                                            case xs11 of {
+                                                              [] -> lvl15;
+                                                              : x12 xs12 ->
+                                                                case x12 of { (a13, b13) ->
+                                                                case xs12 of {
+                                                                  [] -> lvl15;
+                                                                  : x13 xs13 ->
+                                                                    case x13 of { (a14, b14) ->
+                                                                    case xs13 of {
+                                                                      [] -> lvl15;
+                                                                      : x14 xs14 ->
+                                                                        case x14 of { (a15, b15) ->
+                                                                        case xs14 of {
+                                                                          [] -> lvl15;
+                                                                          : x15 xs15 ->
+                                                                            case x15 of
+                                                                            { (a16, b16) ->
+                                                                            case xs15 of {
+                                                                              [] -> lvl15;
+                                                                              : x16 xs16 ->
+                                                                                case x16 of
+                                                                                { (a17, b17) ->
+                                                                                case xs16 of {
+                                                                                  [] -> lvl15;
+                                                                                  : x17 xs17 ->
+                                                                                    case x17 of
+                                                                                    { (a18, b18) ->
+                                                                                    case xs17 of {
+                                                                                      [] -> lvl15;
+                                                                                      : x18 xs18 ->
+                                                                                        case x18 of
+                                                                                        { (a19,
+                                                                                           b19) ->
+                                                                                        case xs18
+                                                                                        of {
+                                                                                          [] ->
+                                                                                            lvl15;
+                                                                                          : x19
+                                                                                            xs19 ->
+                                                                                            case x19
+                                                                                            of
+                                                                                            { (a20,
+                                                                                               b20) ->
+                                                                                            case xs19
+                                                                                            of {
+                                                                                              [] ->
+                                                                                                lvl15;
+                                                                                              : x20
+                                                                                                xs20 ->
+                                                                                                case x20
+                                                                                                of
+                                                                                                { (a21,
+                                                                                                   b21) ->
+                                                                                                case xs20
+                                                                                                of {
+                                                                                                  [] ->
+                                                                                                    lvl15;
+                                                                                                  : x21
+                                                                                                    xs21 ->
+                                                                                                    case x21
+                                                                                                    of
+                                                                                                    { (a22,
+                                                                                                       b22) ->
+                                                                                                    case xs21
+                                                                                                    of {
+                                                                                                      [] ->
+                                                                                                        lvl15;
+                                                                                                      : x22
+                                                                                                        xs22 ->
+                                                                                                        case x22
+                                                                                                        of
+                                                                                                        { (a23,
+                                                                                                           b23) ->
+                                                                                                        case xs22
+                                                                                                        of {
+                                                                                                          [] ->
+                                                                                                            lvl15;
+                                                                                                          : x23
+                                                                                                            xs23 ->
+                                                                                                            case x23
+                                                                                                            of
+                                                                                                            { (a24,
+                                                                                                               b24) ->
+                                                                                                            (GHC.Types.:
+                                                                                                               @ Float
+                                                                                                               a1
+                                                                                                               (GHC.Types.:
+                                                                                                                  @ Float
+                                                                                                                  a2
+                                                                                                                  (GHC.Types.:
+                                                                                                                     @ Float
+                                                                                                                     a3
+                                                                                                                     (GHC.Types.:
+                                                                                                                        @ Float
+                                                                                                                        a4
+                                                                                                                        (GHC.Types.:
+                                                                                                                           @ Float
+                                                                                                                           a5
+                                                                                                                           (GHC.Types.:
+                                                                                                                              @ Float
+                                                                                                                              a6
+                                                                                                                              (GHC.Types.:
+                                                                                                                                 @ Float
+                                                                                                                                 a7
+                                                                                                                                 (GHC.Types.:
+                                                                                                                                    @ Float
+                                                                                                                                    a8
+                                                                                                                                    (GHC.Types.:
+                                                                                                                                       @ Float
+                                                                                                                                       a9
+                                                                                                                                       (GHC.Types.:
+                                                                                                                                          @ Float
+                                                                                                                                          a10
+                                                                                                                                          (GHC.Types.:
+                                                                                                                                             @ Float
+                                                                                                                                             a11
+                                                                                                                                             (GHC.Types.:
+                                                                                                                                                @ Float
+                                                                                                                                                a12
+                                                                                                                                                (GHC.Types.:
+                                                                                                                                                   @ Float
+                                                                                                                                                   a13
+                                                                                                                                                   (GHC.Types.:
+                                                                                                                                                      @ Float
+                                                                                                                                                      a14
+                                                                                                                                                      (GHC.Types.:
+                                                                                                                                                         @ Float
+                                                                                                                                                         a15
+                                                                                                                                                         (GHC.Types.:
+                                                                                                                                                            @ Float
+                                                                                                                                                            a16
+                                                                                                                                                            (GHC.Types.:
+                                                                                                                                                               @ Float
+                                                                                                                                                               a17
+                                                                                                                                                               (GHC.Types.:
+                                                                                                                                                                  @ Float
+                                                                                                                                                                  a18
+                                                                                                                                                                  (GHC.Types.:
+                                                                                                                                                                     @ Float
+                                                                                                                                                                     a19
+                                                                                                                                                                     (GHC.Types.:
+                                                                                                                                                                        @ Float
+                                                                                                                                                                        a20
+                                                                                                                                                                        (GHC.Types.:
+                                                                                                                                                                           @ Float
+                                                                                                                                                                           a21
+                                                                                                                                                                           (GHC.Types.:
+                                                                                                                                                                              @ Float
+                                                                                                                                                                              a22
+                                                                                                                                                                              (GHC.Types.:
+                                                                                                                                                                                 @ Float
+                                                                                                                                                                                 a23
+                                                                                                                                                                                 (GHC.Types.:
+                                                                                                                                                                                    @ Float
+                                                                                                                                                                                    a24
+                                                                                                                                                                                    (GHC.Types.[]
+                                                                                                                                                                                       @ Float)))))))))))))))))))))))),
+                                                                                                             GHC.Types.:
+                                                                                                               @ Float
+                                                                                                               b1
+                                                                                                               (GHC.Types.:
+                                                                                                                  @ Float
+                                                                                                                  b2
+                                                                                                                  (GHC.Types.:
+                                                                                                                     @ Float
+                                                                                                                     b3
+                                                                                                                     (GHC.Types.:
+                                                                                                                        @ Float
+                                                                                                                        b4
+                                                                                                                        (GHC.Types.:
+                                                                                                                           @ Float
+                                                                                                                           b5
+                                                                                                                           (GHC.Types.:
+                                                                                                                              @ Float
+                                                                                                                              b6
+                                                                                                                              (GHC.Types.:
+                                                                                                                                 @ Float
+                                                                                                                                 b7
+                                                                                                                                 (GHC.Types.:
+                                                                                                                                    @ Float
+                                                                                                                                    b8
+                                                                                                                                    (GHC.Types.:
+                                                                                                                                       @ Float
+                                                                                                                                       b9
+                                                                                                                                       (GHC.Types.:
+                                                                                                                                          @ Float
+                                                                                                                                          b10
+                                                                                                                                          (GHC.Types.:
+                                                                                                                                             @ Float
+                                                                                                                                             b11
+                                                                                                                                             (GHC.Types.:
+                                                                                                                                                @ Float
+                                                                                                                                                b12
+                                                                                                                                                (GHC.Types.:
+                                                                                                                                                   @ Float
+                                                                                                                                                   b13
+                                                                                                                                                   (GHC.Types.:
+                                                                                                                                                      @ Float
+                                                                                                                                                      b14
+                                                                                                                                                      (GHC.Types.:
+                                                                                                                                                         @ Float
+                                                                                                                                                         b15
+                                                                                                                                                         (GHC.Types.:
+                                                                                                                                                            @ Float
+                                                                                                                                                            b16
+                                                                                                                                                            (GHC.Types.:
+                                                                                                                                                               @ Float
+                                                                                                                                                               b17
+                                                                                                                                                               (GHC.Types.:
+                                                                                                                                                                  @ Float
+                                                                                                                                                                  b18
+                                                                                                                                                                  (GHC.Types.:
+                                                                                                                                                                     @ Float
+                                                                                                                                                                     b19
+                                                                                                                                                                     (GHC.Types.:
+                                                                                                                                                                        @ Float
+                                                                                                                                                                        b20
+                                                                                                                                                                        (GHC.Types.:
+                                                                                                                                                                           @ Float
+                                                                                                                                                                           b21
+                                                                                                                                                                           (GHC.Types.:
+                                                                                                                                                                              @ Float
+                                                                                                                                                                              b22
+                                                                                                                                                                              (GHC.Types.:
+                                                                                                                                                                                 @ Float
+                                                                                                                                                                                 b23
+                                                                                                                                                                                 (GHC.Types.:
+                                                                                                                                                                                    @ Float
+                                                                                                                                                                                    b24
+                                                                                                                                                                                    (GHC.Types.[]
+                                                                                                                                                                                       @ Float)))))))))))))))))))))))))
+                                                                                                            }
+                                                                                                        }
+                                                                                                        }
+                                                                                                    }
+                                                                                                    }
+                                                                                                }
+                                                                                                }
+                                                                                            }
+                                                                                            }
+                                                                                        }
+                                                                                        }
+                                                                                    }
+                                                                                    }
+                                                                                }
+                                                                                }
+                                                                            }
+                                                                            }
+                                                                        }
+                                                                        }
+                                                                    }
+                                                                    }
+                                                                }
+                                                                }
+                                                            }
+                                                            }
+                                                        }
+                                                        }
+                                                    }
+                                                    }
+                                                }
+                                                }
+                                            }
+                                            }
+                                        }
+                                        }
+                                    }
+                                    }
+                                }
+                                }
+                            }
+                            }
+                        }
+                        }
+                    }
+                    }
+                }
+                }
+            } } in
+      (# case ds of { (es1, es2) ->
+         case es1 of {
+           [] -> lvl28;
+           : x0 ds1 ->
+             case ds1 of {
+               [] -> lvl28;
+               : x1 ds2 ->
+                 case ds2 of {
+                   [] -> lvl28;
+                   : x2 ds3 ->
+                     case ds3 of {
+                       [] -> lvl28;
+                       : x3 ds4 ->
+                         case ds4 of {
+                           [] -> lvl28;
+                           : x4 ds5 ->
+                             case ds5 of {
+                               [] -> lvl28;
+                               : x5 ds6 ->
+                                 case ds6 of {
+                                   [] -> lvl28;
+                                   : x6 ds7 ->
+                                     case ds7 of {
+                                       [] -> lvl28;
+                                       : x7 ds8 ->
+                                         case ds8 of {
+                                           [] -> lvl28;
+                                           : x8 ds9 ->
+                                             case ds9 of {
+                                               [] -> lvl28;
+                                               : x9 ds10 ->
+                                                 case ds10 of {
+                                                   [] -> lvl28;
+                                                   : x10 ds11 ->
+                                                     case ds11 of {
+                                                       [] -> lvl28;
+                                                       : x11 ds12 ->
+                                                         case ds12 of {
+                                                           [] -> lvl28;
+                                                           : x12 ds13 ->
+                                                             case ds13 of {
+                                                               [] -> lvl28;
+                                                               : x13 ds14 ->
+                                                                 case ds14 of {
+                                                                   [] -> lvl28;
+                                                                   : x14 ds15 ->
+                                                                     case ds15 of {
+                                                                       [] -> lvl28;
+                                                                       : x15 ds16 ->
+                                                                         case ds16 of {
+                                                                           [] -> lvl28;
+                                                                           : x16 ds17 ->
+                                                                             case ds17 of {
+                                                                               [] -> lvl28;
+                                                                               : x17 ds18 ->
+                                                                                 case ds18 of {
+                                                                                   [] -> lvl28;
+                                                                                   : x18 ds19 ->
+                                                                                     case ds19 of {
+                                                                                       [] -> lvl28;
+                                                                                       : x19 ds20 ->
+                                                                                         case ds20
+                                                                                         of {
+                                                                                           [] ->
+                                                                                             lvl28;
+                                                                                           : x20
+                                                                                             ds21 ->
+                                                                                             case ds21
+                                                                                             of {
+                                                                                               [] ->
+                                                                                                 lvl28;
+                                                                                               : x21
+                                                                                                 ds22 ->
+                                                                                                 case ds22
+                                                                                                 of {
+                                                                                                   [] ->
+                                                                                                     lvl28;
+                                                                                                   : x22
+                                                                                                     ds23 ->
+                                                                                                     case ds23
+                                                                                                     of {
+                                                                                                       [] ->
+                                                                                                         lvl28;
+                                                                                                       : x23
+                                                                                                         ds24 ->
+                                                                                                         TensorInstances.$WTensor'2'3'4'Float
+                                                                                                           x0
+                                                                                                           x1
+                                                                                                           x2
+                                                                                                           x3
+                                                                                                           x4
+                                                                                                           x5
+                                                                                                           x6
+                                                                                                           x7
+                                                                                                           x8
+                                                                                                           x9
+                                                                                                           x10
+                                                                                                           x11
+                                                                                                           x12
+                                                                                                           x13
+                                                                                                           x14
+                                                                                                           x15
+                                                                                                           x16
+                                                                                                           x17
+                                                                                                           x18
+                                                                                                           x19
+                                                                                                           x20
+                                                                                                           x21
+                                                                                                           x22
+                                                                                                           x23
+                                                                                                     }
+                                                                                                 }
+                                                                                             }
+                                                                                         }
+                                                                                     }
+                                                                                 }
+                                                                             }
+                                                                         }
+                                                                     }
+                                                                 }
+                                                             }
+                                                         }
+                                                     }
+                                                 }
+                                             }
+                                         }
+                                     }
+                                 }
+                             }
+                         }
+                     }
+                 }
+             }
+         }
+         },
+         case ds of { (es1, es2) ->
+         case es2 of {
+           [] -> lvl28;
+           : x0 ds1 ->
+             case ds1 of {
+               [] -> lvl28;
+               : x1 ds2 ->
+                 case ds2 of {
+                   [] -> lvl28;
+                   : x2 ds3 ->
+                     case ds3 of {
+                       [] -> lvl28;
+                       : x3 ds4 ->
+                         case ds4 of {
+                           [] -> lvl28;
+                           : x4 ds5 ->
+                             case ds5 of {
+                               [] -> lvl28;
+                               : x5 ds6 ->
+                                 case ds6 of {
+                                   [] -> lvl28;
+                                   : x6 ds7 ->
+                                     case ds7 of {
+                                       [] -> lvl28;
+                                       : x7 ds8 ->
+                                         case ds8 of {
+                                           [] -> lvl28;
+                                           : x8 ds9 ->
+                                             case ds9 of {
+                                               [] -> lvl28;
+                                               : x9 ds10 ->
+                                                 case ds10 of {
+                                                   [] -> lvl28;
+                                                   : x10 ds11 ->
+                                                     case ds11 of {
+                                                       [] -> lvl28;
+                                                       : x11 ds12 ->
+                                                         case ds12 of {
+                                                           [] -> lvl28;
+                                                           : x12 ds13 ->
+                                                             case ds13 of {
+                                                               [] -> lvl28;
+                                                               : x13 ds14 ->
+                                                                 case ds14 of {
+                                                                   [] -> lvl28;
+                                                                   : x14 ds15 ->
+                                                                     case ds15 of {
+                                                                       [] -> lvl28;
+                                                                       : x15 ds16 ->
+                                                                         case ds16 of {
+                                                                           [] -> lvl28;
+                                                                           : x16 ds17 ->
+                                                                             case ds17 of {
+                                                                               [] -> lvl28;
+                                                                               : x17 ds18 ->
+                                                                                 case ds18 of {
+                                                                                   [] -> lvl28;
+                                                                                   : x18 ds19 ->
+                                                                                     case ds19 of {
+                                                                                       [] -> lvl28;
+                                                                                       : x19 ds20 ->
+                                                                                         case ds20
+                                                                                         of {
+                                                                                           [] ->
+                                                                                             lvl28;
+                                                                                           : x20
+                                                                                             ds21 ->
+                                                                                             case ds21
+                                                                                             of {
+                                                                                               [] ->
+                                                                                                 lvl28;
+                                                                                               : x21
+                                                                                                 ds22 ->
+                                                                                                 case ds22
+                                                                                                 of {
+                                                                                                   [] ->
+                                                                                                     lvl28;
+                                                                                                   : x22
+                                                                                                     ds23 ->
+                                                                                                     case ds23
+                                                                                                     of {
+                                                                                                       [] ->
+                                                                                                         lvl28;
+                                                                                                       : x23
+                                                                                                         ds24 ->
+                                                                                                         TensorInstances.$WTensor'2'3'4'Float
+                                                                                                           x0
+                                                                                                           x1
+                                                                                                           x2
+                                                                                                           x3
+                                                                                                           x4
+                                                                                                           x5
+                                                                                                           x6
+                                                                                                           x7
+                                                                                                           x8
+                                                                                                           x9
+                                                                                                           x10
+                                                                                                           x11
+                                                                                                           x12
+                                                                                                           x13
+                                                                                                           x14
+                                                                                                           x15
+                                                                                                           x16
+                                                                                                           x17
+                                                                                                           x18
+                                                                                                           x19
+                                                                                                           x20
+                                                                                                           x21
+                                                                                                           x22
+                                                                                                           x23
+                                                                                                     }
+                                                                                                 }
+                                                                                             }
+                                                                                         }
+                                                                                     }
+                                                                                 }
+                                                                             }
+                                                                         }
+                                                                     }
+                                                                 }
+                                                             }
+                                                         }
+                                                     }
+                                                 }
+                                             }
+                                         }
+                                     }
+                                 }
+                             }
+                         }
+                     }
+                 }
+             }
+         }
+         } #)
+
+-- RHS size: {terms: 8, types: 85, coercions: 0, joins: 0/0}
+ounzip_
+  :: [(Float, Float)]
+     -> (Tensor '[2, 3, 4] Float, Tensor '[2, 3, 4] Float)
+ounzip_
+  = \ (w :: [(Float, Float)]) ->
+      case CoreDump.Tensor.Ounzip.$wounzip_ w of { (# ww1, ww2 #) ->
+      (ww1, ww2)
+      }
+
+
+ tests/CoreDump/Tensor/Ounzip.hs view
@@ -0,0 +1,13 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Ounzip where
+
+import Data.Tensor.Static
+import Data.Containers
+import TensorInstances ()
+
+-- FIXME: generates suboptimal core.
+ounzip_ :: [(Float, Float)]
+        -> (Tensor '[2, 3, 4] Float, Tensor '[2, 3, 4] Float)
+ounzip_ xs = ounzip xs
+ tests/CoreDump/Tensor/Ozip.dump-simpl.ghc821.golden view
@@ -0,0 +1,130 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:18.5408096 UTC
+
+Result size of Tidy Core
+  = {terms: 168, types: 234, coercions: 2, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ozip.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Ozip.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ozip.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Ozip.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Ozip.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ozip.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Ozip.$trModule2 = "CoreDump.Tensor.Ozip"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ozip.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Ozip.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Ozip.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Ozip.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Ozip.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Ozip.$trModule3 CoreDump.Tensor.Ozip.$trModule1
+
+-- RHS size: {terms: 153, types: 199, coercions: 2, joins: 0/0}
+ozip_
+  :: Tensor '[2, 3, 4] Float
+     -> Tensor '[2, 3, 4] Float -> [(Float, Float)]
+ozip_
+  = \ (a :: Tensor '[2, 3, 4] Float)
+      (b :: Tensor '[2, 3, 4] Float) ->
+      case a `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case b `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt29 dt30 dt31 dt32 dt33 dt34
+                                           dt35 dt36 dt37 dt38 dt39 dt40 dt41 dt42 dt43 dt44 dt45
+                                           dt46 dt47 dt48 dt49 dt50 dt51 dt52 ->
+      GHC.Types.:
+        @ (Float, Float)
+        (GHC.Types.F# dt, GHC.Types.F# dt29)
+        (GHC.Types.:
+           @ (Float, Float)
+           (GHC.Types.F# dt1, GHC.Types.F# dt30)
+           (GHC.Types.:
+              @ (Float, Float)
+              (GHC.Types.F# dt2, GHC.Types.F# dt31)
+              (GHC.Types.:
+                 @ (Float, Float)
+                 (GHC.Types.F# dt3, GHC.Types.F# dt32)
+                 (GHC.Types.:
+                    @ (Float, Float)
+                    (GHC.Types.F# dt4, GHC.Types.F# dt33)
+                    (GHC.Types.:
+                       @ (Float, Float)
+                       (GHC.Types.F# dt5, GHC.Types.F# dt34)
+                       (GHC.Types.:
+                          @ (Float, Float)
+                          (GHC.Types.F# dt6, GHC.Types.F# dt35)
+                          (GHC.Types.:
+                             @ (Float, Float)
+                             (GHC.Types.F# dt7, GHC.Types.F# dt36)
+                             (GHC.Types.:
+                                @ (Float, Float)
+                                (GHC.Types.F# dt8, GHC.Types.F# dt37)
+                                (GHC.Types.:
+                                   @ (Float, Float)
+                                   (GHC.Types.F# dt9, GHC.Types.F# dt38)
+                                   (GHC.Types.:
+                                      @ (Float, Float)
+                                      (GHC.Types.F# dt10, GHC.Types.F# dt39)
+                                      (GHC.Types.:
+                                         @ (Float, Float)
+                                         (GHC.Types.F# dt11, GHC.Types.F# dt40)
+                                         (GHC.Types.:
+                                            @ (Float, Float)
+                                            (GHC.Types.F# dt12, GHC.Types.F# dt41)
+                                            (GHC.Types.:
+                                               @ (Float, Float)
+                                               (GHC.Types.F# dt13, GHC.Types.F# dt42)
+                                               (GHC.Types.:
+                                                  @ (Float, Float)
+                                                  (GHC.Types.F# dt14, GHC.Types.F# dt43)
+                                                  (GHC.Types.:
+                                                     @ (Float, Float)
+                                                     (GHC.Types.F# dt15, GHC.Types.F# dt44)
+                                                     (GHC.Types.:
+                                                        @ (Float, Float)
+                                                        (GHC.Types.F# dt16, GHC.Types.F# dt45)
+                                                        (GHC.Types.:
+                                                           @ (Float, Float)
+                                                           (GHC.Types.F# dt17, GHC.Types.F# dt46)
+                                                           (GHC.Types.:
+                                                              @ (Float, Float)
+                                                              (GHC.Types.F# dt18, GHC.Types.F# dt47)
+                                                              (GHC.Types.:
+                                                                 @ (Float, Float)
+                                                                 (GHC.Types.F# dt19,
+                                                                  GHC.Types.F# dt48)
+                                                                 (GHC.Types.:
+                                                                    @ (Float, Float)
+                                                                    (GHC.Types.F# dt20,
+                                                                     GHC.Types.F# dt49)
+                                                                    (GHC.Types.:
+                                                                       @ (Float, Float)
+                                                                       (GHC.Types.F# dt21,
+                                                                        GHC.Types.F# dt50)
+                                                                       (GHC.Types.:
+                                                                          @ (Float, Float)
+                                                                          (GHC.Types.F# dt22,
+                                                                           GHC.Types.F# dt51)
+                                                                          (GHC.Types.:
+                                                                             @ (Float, Float)
+                                                                             (GHC.Types.F# dt23,
+                                                                              GHC.Types.F# dt52)
+                                                                             (GHC.Types.[]
+                                                                                @ (Float,
+                                                                                   Float)))))))))))))))))))))))))
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Ozip.hs view
@@ -0,0 +1,13 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Ozip where
+
+import Data.Tensor.Static
+import Data.Containers
+import TensorInstances ()
+
+ozip_ :: Tensor '[2, 3, 4] Float
+      -> Tensor '[2, 3, 4] Float
+      -> [(Float, Float)]
+ozip_ a b = ozip a b
+ tests/CoreDump/Tensor/OzipWith.dump-simpl.ghc821.golden view
@@ -0,0 +1,152 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:18.3848094 UTC
+
+Result size of Tidy Core
+  = {terms: 217, types: 174, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OzipWith.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.OzipWith.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OzipWith.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.OzipWith.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.OzipWith.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OzipWith.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.OzipWith.$trModule2 = "CoreDump.Tensor.OzipWith"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OzipWith.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.OzipWith.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.OzipWith.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.OzipWith.$trModule :: GHC.Types.Module
+CoreDump.Tensor.OzipWith.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.OzipWith.$trModule3
+      CoreDump.Tensor.OzipWith.$trModule1
+
+-- RHS size: {terms: 202, types: 127, coercions: 4, joins: 0/0}
+ozipWith_
+  :: (Float -> Float -> Float)
+     -> Tensor '[2, 3, 4] Float
+     -> Tensor '[2, 3, 4] Float
+     -> Tensor '[2, 3, 4] Float
+ozipWith_
+  = \ (f :: Float -> Float -> Float)
+      (t1 :: Tensor '[2, 3, 4] Float)
+      (t2 :: Tensor '[2, 3, 4] Float) ->
+      case t1 `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case t2 `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt29 dt30 dt31 dt32 dt33 dt34
+                                           dt35 dt36 dt37 dt38 dt39 dt40 dt41 dt42 dt43 dt44 dt45
+                                           dt46 dt47 dt48 dt49 dt50 dt51 dt52 ->
+      case f (GHC.Types.F# dt) (GHC.Types.F# dt29) of
+      { GHC.Types.F# dt54 ->
+      case f (GHC.Types.F# dt1) (GHC.Types.F# dt30) of
+      { GHC.Types.F# dt56 ->
+      case f (GHC.Types.F# dt2) (GHC.Types.F# dt31) of
+      { GHC.Types.F# dt58 ->
+      case f (GHC.Types.F# dt3) (GHC.Types.F# dt32) of
+      { GHC.Types.F# dt60 ->
+      case f (GHC.Types.F# dt4) (GHC.Types.F# dt33) of
+      { GHC.Types.F# dt62 ->
+      case f (GHC.Types.F# dt5) (GHC.Types.F# dt34) of
+      { GHC.Types.F# dt64 ->
+      case f (GHC.Types.F# dt6) (GHC.Types.F# dt35) of
+      { GHC.Types.F# dt66 ->
+      case f (GHC.Types.F# dt7) (GHC.Types.F# dt36) of
+      { GHC.Types.F# dt68 ->
+      case f (GHC.Types.F# dt8) (GHC.Types.F# dt37) of
+      { GHC.Types.F# dt70 ->
+      case f (GHC.Types.F# dt9) (GHC.Types.F# dt38) of
+      { GHC.Types.F# dt72 ->
+      case f (GHC.Types.F# dt10) (GHC.Types.F# dt39) of
+      { GHC.Types.F# dt74 ->
+      case f (GHC.Types.F# dt11) (GHC.Types.F# dt40) of
+      { GHC.Types.F# dt76 ->
+      case f (GHC.Types.F# dt12) (GHC.Types.F# dt41) of
+      { GHC.Types.F# dt78 ->
+      case f (GHC.Types.F# dt13) (GHC.Types.F# dt42) of
+      { GHC.Types.F# dt80 ->
+      case f (GHC.Types.F# dt14) (GHC.Types.F# dt43) of
+      { GHC.Types.F# dt82 ->
+      case f (GHC.Types.F# dt15) (GHC.Types.F# dt44) of
+      { GHC.Types.F# dt84 ->
+      case f (GHC.Types.F# dt16) (GHC.Types.F# dt45) of
+      { GHC.Types.F# dt86 ->
+      case f (GHC.Types.F# dt17) (GHC.Types.F# dt46) of
+      { GHC.Types.F# dt88 ->
+      case f (GHC.Types.F# dt18) (GHC.Types.F# dt47) of
+      { GHC.Types.F# dt90 ->
+      case f (GHC.Types.F# dt19) (GHC.Types.F# dt48) of
+      { GHC.Types.F# dt92 ->
+      case f (GHC.Types.F# dt20) (GHC.Types.F# dt49) of
+      { GHC.Types.F# dt94 ->
+      case f (GHC.Types.F# dt21) (GHC.Types.F# dt50) of
+      { GHC.Types.F# dt96 ->
+      case f (GHC.Types.F# dt22) (GHC.Types.F# dt51) of
+      { GHC.Types.F# dt98 ->
+      case f (GHC.Types.F# dt23) (GHC.Types.F# dt52) of
+      { GHC.Types.F# dt100 ->
+      (TensorInstances.Tensor'2'3'4'Float
+         dt54
+         dt56
+         dt58
+         dt60
+         dt62
+         dt64
+         dt66
+         dt68
+         dt70
+         dt72
+         dt74
+         dt76
+         dt78
+         dt80
+         dt82
+         dt84
+         dt86
+         dt88
+         dt90
+         dt92
+         dt94
+         dt96
+         dt98
+         dt100)
+      `cast` <Co:2>
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+      }
+
+
+ tests/CoreDump/Tensor/OzipWith.hs view
@@ -0,0 +1,14 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.OzipWith where
+
+import Data.Tensor.Static
+import Data.Containers
+import TensorInstances ()
+
+ozipWith_ :: (Float -> Float -> Float) 
+          -> Tensor '[2, 3, 4] Float
+          -> Tensor '[2, 3, 4] Float
+          -> Tensor '[2, 3, 4] Float
+ozipWith_ f = ozipWith f
+ tests/CoreDump/Tensor/Remove_0_0.dump-simpl.ghc821.golden view
@@ -0,0 +1,47 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:18.2288091 UTC
+
+Result size of Tidy Core
+  = {terms: 32, types: 69, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_0_0.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Remove_0_0.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_0_0.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Remove_0_0.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Remove_0_0.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_0_0.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Remove_0_0.$trModule2
+  = "CoreDump.Tensor.Remove_0_0"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_0_0.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Remove_0_0.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Remove_0_0.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_0_0.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Remove_0_0.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Remove_0_0.$trModule3
+      CoreDump.Tensor.Remove_0_0.$trModule1
+
+-- RHS size: {terms: 17, types: 38, coercions: 3, joins: 0/0}
+remove_0_0_ :: Tensor '[2, 3, 4] Float -> Tensor '[1, 3, 4] Float
+remove_0_0_
+  = \ (x :: Tensor '[2, 3, 4] Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      (TensorInstances.Tensor'1'3'4'Float
+         dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19 dt20 dt21 dt22 dt23)
+      `cast` <Co:2>
+      }
+
+
+ tests/CoreDump/Tensor/Remove_0_0.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Remove_0_0 where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+remove_0_0_ :: Tensor '[2, 3, 4] Float -> Tensor '[1, 3, 4] Float
+remove_0_0_ = remove @0 @0
+ tests/CoreDump/Tensor/Remove_1_0.dump-simpl.ghc821.golden view
@@ -0,0 +1,62 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:18.0594072 UTC
+
+Result size of Tidy Core
+  = {terms: 36, types: 69, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_1_0.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Remove_1_0.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_1_0.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Remove_1_0.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Remove_1_0.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_1_0.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Remove_1_0.$trModule2
+  = "CoreDump.Tensor.Remove_1_0"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_1_0.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Remove_1_0.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Remove_1_0.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_1_0.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Remove_1_0.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Remove_1_0.$trModule3
+      CoreDump.Tensor.Remove_1_0.$trModule1
+
+-- RHS size: {terms: 21, types: 38, coercions: 3, joins: 0/0}
+remove_1_0_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 2, 4] Float
+remove_1_0_
+  = \ (x :: Tensor '[2, 3, 4] Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      (TensorInstances.Tensor'2'2'4'Float
+         dt4
+         dt5
+         dt6
+         dt7
+         dt8
+         dt9
+         dt10
+         dt11
+         dt16
+         dt17
+         dt18
+         dt19
+         dt20
+         dt21
+         dt22
+         dt23)
+      `cast` <Co:2>
+      }
+
+
+ tests/CoreDump/Tensor/Remove_1_0.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Remove_1_0 where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+remove_1_0_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 2, 4] Float
+remove_1_0_ = remove @1 @0
+ tests/CoreDump/Tensor/Remove_2_0.dump-simpl.ghc821.golden view
@@ -0,0 +1,64 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:17.865603 UTC
+
+Result size of Tidy Core
+  = {terms: 38, types: 69, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_2_0.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Remove_2_0.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_2_0.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Remove_2_0.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Remove_2_0.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_2_0.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Remove_2_0.$trModule2
+  = "CoreDump.Tensor.Remove_2_0"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_2_0.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Remove_2_0.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Remove_2_0.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Remove_2_0.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Remove_2_0.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Remove_2_0.$trModule3
+      CoreDump.Tensor.Remove_2_0.$trModule1
+
+-- RHS size: {terms: 23, types: 38, coercions: 3, joins: 0/0}
+remove_2_0_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 3] Float
+remove_2_0_
+  = \ (x :: Tensor '[2, 3, 4] Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      (TensorInstances.Tensor'2'3'3'Float
+         dt1
+         dt2
+         dt3
+         dt5
+         dt6
+         dt7
+         dt9
+         dt10
+         dt11
+         dt13
+         dt14
+         dt15
+         dt17
+         dt18
+         dt19
+         dt21
+         dt22
+         dt23)
+      `cast` <Co:2>
+      }
+
+
+ tests/CoreDump/Tensor/Remove_2_0.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Remove_2_0 where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+remove_2_0_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 3] Float
+remove_2_0_ = remove @2 @0
+ tests/CoreDump/Tensor/Scale.dump-simpl.ghc821.golden view
@@ -0,0 +1,71 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:17.6850022 UTC
+
+Result size of Tidy Core
+  = {terms: 96, types: 73, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Scale.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Scale.$trModule2 = "CoreDump.Tensor.Scale"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Scale.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Scale.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Scale.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Scale.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Scale.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Scale.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Scale.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Scale.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Scale.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Scale.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Scale.$trModule3 CoreDump.Tensor.Scale.$trModule1
+
+-- RHS size: {terms: 81, types: 41, coercions: 3, joins: 0/0}
+scale_
+  :: Tensor '[2, 3, 4] Float -> Float -> Tensor '[2, 3, 4] Float
+scale_
+  = \ (t :: Tensor '[2, 3, 4] Float) (k :: Float) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case k of { GHC.Types.F# y ->
+      (TensorInstances.Tensor'2'3'4'Float
+         (GHC.Prim.timesFloat# dt y)
+         (GHC.Prim.timesFloat# dt1 y)
+         (GHC.Prim.timesFloat# dt2 y)
+         (GHC.Prim.timesFloat# dt3 y)
+         (GHC.Prim.timesFloat# dt4 y)
+         (GHC.Prim.timesFloat# dt5 y)
+         (GHC.Prim.timesFloat# dt6 y)
+         (GHC.Prim.timesFloat# dt7 y)
+         (GHC.Prim.timesFloat# dt8 y)
+         (GHC.Prim.timesFloat# dt9 y)
+         (GHC.Prim.timesFloat# dt10 y)
+         (GHC.Prim.timesFloat# dt11 y)
+         (GHC.Prim.timesFloat# dt12 y)
+         (GHC.Prim.timesFloat# dt13 y)
+         (GHC.Prim.timesFloat# dt14 y)
+         (GHC.Prim.timesFloat# dt15 y)
+         (GHC.Prim.timesFloat# dt16 y)
+         (GHC.Prim.timesFloat# dt17 y)
+         (GHC.Prim.timesFloat# dt18 y)
+         (GHC.Prim.timesFloat# dt19 y)
+         (GHC.Prim.timesFloat# dt20 y)
+         (GHC.Prim.timesFloat# dt21 y)
+         (GHC.Prim.timesFloat# dt22 y)
+         (GHC.Prim.timesFloat# dt23 y))
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Scale.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Scale where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+scale_ :: Tensor '[2, 3, 4] Float -> Float -> Tensor '[2, 3, 4] Float
+scale_ = scale
+ tests/CoreDump/Tensor/SetSlice.dump-simpl.ghc821.golden view
@@ -0,0 +1,91 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:17.0157873 UTC
+
+Result size of Tidy Core
+  = {terms: 50, types: 145, coercions: 105, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSlice.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.SetSlice.$trModule2 = "CoreDump.Tensor.SetSlice"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSlice.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.SetSlice.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.SetSlice.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSlice.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.SetSlice.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSlice.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.SetSlice.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.SetSlice.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSlice.$trModule :: GHC.Types.Module
+CoreDump.Tensor.SetSlice.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.SetSlice.$trModule3
+      CoreDump.Tensor.SetSlice.$trModule1
+
+-- RHS size: {terms: 33, types: 61, coercions: 41, joins: 0/0}
+CoreDump.Tensor.SetSlice.$ssetSlice
+  :: Tensor '[2, 3, 4] Float
+     -> Tensor (NormalizeDims '[2, 2, 2]) Float
+     -> Tensor '[2, 3, 4] Float
+CoreDump.Tensor.SetSlice.$ssetSlice
+  = \ (t :: Tensor '[2, 3, 4] Float)
+      (st :: Tensor (NormalizeDims '[2, 2, 2]) Float) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case st `cast` <Co:38> of
+      { TensorInstances.Tensor'2'2'2'Float dt29 dt30 dt31 dt32 dt33 dt34
+                                           dt35 dt36 ->
+      (TensorInstances.Tensor'2'3'4'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt4
+         dt5
+         dt29
+         dt30
+         dt8
+         dt9
+         dt31
+         dt32
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt17
+         dt33
+         dt34
+         dt20
+         dt21
+         dt35
+         dt36)
+      `cast` <Co:2>
+      }
+      }
+
+-- RHS size: {terms: 1, types: 0, coercions: 64, joins: 0/0}
+setSlice_
+  :: Tensor '[2, 3, 4] Float
+     -> Tensor '[2, 2, 2] Float -> Tensor '[2, 3, 4] Float
+setSlice_ = CoreDump.Tensor.SetSlice.$ssetSlice `cast` <Co:64>
+
+
+------ Local rules for imported ids --------
+"SPEC/CoreDump.Tensor.SetSlice setSlice @ '[0, 1, 2] @ '[2, 2,
+                                                        2] @ '[2, 3, 4] @ Float"
+    forall ($d(%,,%)
+              :: SetSlice '[0, 1, 2] '[2, 2, 2] '[2, 3, 4] Float).
+      setSlice @ '[0, 1, 2] @ '[2, 2, 2] @ '[2, 3, 4] @ Float $d(%,,%)
+      = CoreDump.Tensor.SetSlice.$ssetSlice
+
+ tests/CoreDump/Tensor/SetSlice.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.SetSlice where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+setSlice_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 2, 2] Float -> Tensor '[2, 3, 4] Float
+setSlice_ = setSlice @'[0, 1, 2] @'[2, 2, 2]
+ tests/CoreDump/Tensor/SetSliceElems.dump-simpl.ghc821.golden view
@@ -0,0 +1,122 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:15.6499161 UTC
+
+Result size of Tidy Core
+  = {terms: 110, types: 247, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSliceElems.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.SetSliceElems.$trModule2
+  = "CoreDump.Tensor.SetSliceElems"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSliceElems.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.SetSliceElems.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.SetSliceElems.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSliceElems.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.SetSliceElems.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSliceElems.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.SetSliceElems.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.SetSliceElems.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSliceElems.$trModule :: GHC.Types.Module
+CoreDump.Tensor.SetSliceElems.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.SetSliceElems.$trModule3
+      CoreDump.Tensor.SetSliceElems.$trModule1
+
+-- RHS size: {terms: 95, types: 213, coercions: 3, joins: 0/0}
+setSliceElems_
+  :: Tensor '[2, 3, 4] Float
+     -> [Float] -> Maybe (Tensor '[2, 3, 4] Float)
+setSliceElems_
+  = \ (t :: Tensor '[2, 3, 4] Float) (xs :: [Float]) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case xs of {
+        [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+        : ipv2 ipv3 ->
+          case ipv3 of {
+            [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+            : ipv1 ipv5 ->
+              case ipv5 of {
+                [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                : ipv6 ipv7 ->
+                  case ipv7 of {
+                    [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                    : ipv8 ipv9 ->
+                      case ipv9 of {
+                        [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                        : ipv10 ipv11 ->
+                          case ipv11 of {
+                            [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                            : ipv12 ipv13 ->
+                              case ipv13 of {
+                                [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                                : ipv14 ipv15 ->
+                                  case ipv15 of {
+                                    [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                                    : ipv16 ipv17 ->
+                                      GHC.Base.Just
+                                        @ (Tensor '[2, 3, 4] Float)
+                                        (case ipv2 of { GHC.Types.F# dt30 ->
+                                         case ipv1 of { GHC.Types.F# dt32 ->
+                                         case ipv6 of { GHC.Types.F# dt34 ->
+                                         case ipv8 of { GHC.Types.F# dt36 ->
+                                         case ipv10 of { GHC.Types.F# dt38 ->
+                                         case ipv12 of { GHC.Types.F# dt40 ->
+                                         case ipv14 of { GHC.Types.F# dt42 ->
+                                         case ipv16 of { GHC.Types.F# dt44 ->
+                                         (TensorInstances.Tensor'2'3'4'Float
+                                            dt
+                                            dt1
+                                            dt2
+                                            dt3
+                                            dt4
+                                            dt5
+                                            dt30
+                                            dt32
+                                            dt8
+                                            dt9
+                                            dt34
+                                            dt36
+                                            dt12
+                                            dt13
+                                            dt14
+                                            dt15
+                                            dt16
+                                            dt17
+                                            dt38
+                                            dt40
+                                            dt20
+                                            dt21
+                                            dt42
+                                            dt44)
+                                         `cast` <Co:2>
+                                         }
+                                         }
+                                         }
+                                         }
+                                         }
+                                         }
+                                         }
+                                         })
+                                  }
+                              }
+                          }
+                      }
+                  }
+              }
+          }
+      }
+      }
+
+
+ tests/CoreDump/Tensor/SetSliceElems.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.SetSliceElems where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+setSliceElems_ :: Tensor '[2, 3, 4] Float -> [Float] -> Maybe (Tensor '[2, 3, 4] Float)
+setSliceElems_ = setSliceElems @'[0, 1, 2] @'[2, 2, 2]
+ tests/CoreDump/Tensor/SetSubtensor.dump-simpl.ghc821.golden view
@@ -0,0 +1,78 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:14.3520963 UTC
+
+Result size of Tidy Core
+  = {terms: 48, types: 120, coercions: 127, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSubtensor.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.SetSubtensor.$trModule2
+  = "CoreDump.Tensor.SetSubtensor"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSubtensor.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.SetSubtensor.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.SetSubtensor.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSubtensor.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.SetSubtensor.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSubtensor.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.SetSubtensor.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.SetSubtensor.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSubtensor.$trModule :: GHC.Types.Module
+CoreDump.Tensor.SetSubtensor.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.SetSubtensor.$trModule3
+      CoreDump.Tensor.SetSubtensor.$trModule1
+
+-- RHS size: {terms: 33, types: 71, coercions: 127, joins: 0/0}
+setSubtensor_
+  :: Tensor '[2, 3, 4] Float
+     -> Subtensor '[0] '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+setSubtensor_
+  = \ (t :: Tensor '[2, 3, 4] Float)
+      (st
+         :: Tensor (NormalizeDims (SubtensorDims '[0] '[2, 3, 4])) Float) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case st `cast` <Co:124> of
+      { TensorInstances.Tensor'3'4'Float dt29 dt30 dt31 dt32 dt33 dt34
+                                         dt35 dt36 dt37 dt38 dt39 dt40 ->
+      (TensorInstances.Tensor'2'3'4'Float
+         dt29
+         dt30
+         dt31
+         dt32
+         dt33
+         dt34
+         dt35
+         dt36
+         dt37
+         dt38
+         dt39
+         dt40
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt17
+         dt18
+         dt19
+         dt20
+         dt21
+         dt22
+         dt23)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/SetSubtensor.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.SetSubtensor where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+setSubtensor_ :: Tensor '[2, 3, 4] Float -> Subtensor '[0] '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+setSubtensor_ = setSubtensor @'[0]
+ tests/CoreDump/Tensor/SetSubtensorElems.dump-simpl.ghc821.golden view
@@ -0,0 +1,147 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:13.1436739 UTC
+
+Result size of Tidy Core
+  = {terms: 142, types: 327, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSubtensorElems.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.SetSubtensorElems.$trModule2
+  = "CoreDump.Tensor.SetSubtensorElems"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSubtensorElems.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.SetSubtensorElems.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.SetSubtensorElems.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSubtensorElems.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.SetSubtensorElems.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSubtensorElems.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.SetSubtensorElems.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.SetSubtensorElems.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SetSubtensorElems.$trModule :: GHC.Types.Module
+CoreDump.Tensor.SetSubtensorElems.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.SetSubtensorElems.$trModule3
+      CoreDump.Tensor.SetSubtensorElems.$trModule1
+
+-- RHS size: {terms: 127, types: 293, coercions: 3, joins: 0/0}
+setSubtensorElems_
+  :: Tensor '[2, 3, 4] Float
+     -> [Float] -> Maybe (Tensor '[2, 3, 4] Float)
+setSubtensorElems_
+  = \ (t :: Tensor '[2, 3, 4] Float) (xs :: [Float]) ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case xs of {
+        [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+        : ipv2 ipv3 ->
+          case ipv3 of {
+            [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+            : ipv1 ipv5 ->
+              case ipv5 of {
+                [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                : ipv6 ipv7 ->
+                  case ipv7 of {
+                    [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                    : ipv8 ipv9 ->
+                      case ipv9 of {
+                        [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                        : ipv10 ipv11 ->
+                          case ipv11 of {
+                            [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                            : ipv12 ipv13 ->
+                              case ipv13 of {
+                                [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                                : ipv14 ipv15 ->
+                                  case ipv15 of {
+                                    [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                                    : ipv16 ipv17 ->
+                                      case ipv17 of {
+                                        [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                                        : ipv18 ipv19 ->
+                                          case ipv19 of {
+                                            [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                                            : ipv20 ipv21 ->
+                                              case ipv21 of {
+                                                [] -> GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                                                : ipv22 ipv23 ->
+                                                  case ipv23 of {
+                                                    [] ->
+                                                      GHC.Base.Nothing @ (Tensor '[2, 3, 4] Float);
+                                                    : ipv24 ipv25 ->
+                                                      GHC.Base.Just
+                                                        @ (Tensor '[2, 3, 4] Float)
+                                                        (case ipv2 of { GHC.Types.F# dt30 ->
+                                                         case ipv1 of { GHC.Types.F# dt32 ->
+                                                         case ipv6 of { GHC.Types.F# dt34 ->
+                                                         case ipv8 of { GHC.Types.F# dt36 ->
+                                                         case ipv10 of { GHC.Types.F# dt38 ->
+                                                         case ipv12 of { GHC.Types.F# dt40 ->
+                                                         case ipv14 of { GHC.Types.F# dt42 ->
+                                                         case ipv16 of { GHC.Types.F# dt44 ->
+                                                         case ipv18 of { GHC.Types.F# dt46 ->
+                                                         case ipv20 of { GHC.Types.F# dt48 ->
+                                                         case ipv22 of { GHC.Types.F# dt50 ->
+                                                         case ipv24 of { GHC.Types.F# dt52 ->
+                                                         (TensorInstances.Tensor'2'3'4'Float
+                                                            dt30
+                                                            dt32
+                                                            dt34
+                                                            dt36
+                                                            dt38
+                                                            dt40
+                                                            dt42
+                                                            dt44
+                                                            dt46
+                                                            dt48
+                                                            dt50
+                                                            dt52
+                                                            dt12
+                                                            dt13
+                                                            dt14
+                                                            dt15
+                                                            dt16
+                                                            dt17
+                                                            dt18
+                                                            dt19
+                                                            dt20
+                                                            dt21
+                                                            dt22
+                                                            dt23)
+                                                         `cast` <Co:2>
+                                                         }
+                                                         }
+                                                         }
+                                                         }
+                                                         }
+                                                         }
+                                                         }
+                                                         }
+                                                         }
+                                                         }
+                                                         }
+                                                         })
+                                                  }
+                                              }
+                                          }
+                                      }
+                                  }
+                              }
+                          }
+                      }
+                  }
+              }
+          }
+      }
+      }
+
+
+ tests/CoreDump/Tensor/SetSubtensorElems.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.SetSubtensorElems where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+setSubtensorElems_ :: Tensor '[2, 3, 4] Float -> [Float] -> Maybe (Tensor '[2, 3, 4] Float)
+setSubtensorElems_ = setSubtensorElems @'[0]
+ tests/CoreDump/Tensor/Snoc_0.dump-simpl.ghc821.golden view
@@ -0,0 +1,86 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:11.6872633 UTC
+
+Result size of Tidy Core
+  = {terms: 60, types: 102, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_0.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Snoc_0.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_0.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Snoc_0.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Snoc_0.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_0.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Snoc_0.$trModule2 = "CoreDump.Tensor.Snoc_0"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_0.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Snoc_0.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Snoc_0.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_0.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Snoc_0.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Snoc_0.$trModule3 CoreDump.Tensor.Snoc_0.$trModule1
+
+-- RHS size: {terms: 45, types: 61, coercions: 4, joins: 0/0}
+snoc_0_
+  :: Tensor '[2, 3, 4] Float
+     -> Tensor '[3, 4] Float -> Tensor '[3, 3, 4] Float
+snoc_0_
+  = \ (st :: Tensor '[2, 3, 4] Float) (t :: Tensor '[3, 4] Float) ->
+      case st `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'3'4'Float dt29 dt30 dt31 dt32 dt33 dt34
+                                         dt35 dt36 dt37 dt38 dt39 dt40 ->
+      (TensorInstances.Tensor'3'3'4'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt4
+         dt5
+         dt6
+         dt7
+         dt8
+         dt9
+         dt10
+         dt11
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt17
+         dt18
+         dt19
+         dt20
+         dt21
+         dt22
+         dt23
+         dt29
+         dt30
+         dt31
+         dt32
+         dt33
+         dt34
+         dt35
+         dt36
+         dt37
+         dt38
+         dt39
+         dt40)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Snoc_0.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Snoc_0 where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+snoc_0_ :: Tensor '[2, 3, 4] Float -> Tensor '[3, 4] Float -> Tensor '[3, 3, 4] Float
+snoc_0_ st t = snoc @0 st t
+ tests/CoreDump/Tensor/Snoc_1.dump-simpl.ghc821.golden view
@@ -0,0 +1,82 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:11.1150539 UTC
+
+Result size of Tidy Core
+  = {terms: 56, types: 98, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_1.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Snoc_1.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_1.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Snoc_1.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Snoc_1.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_1.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Snoc_1.$trModule2 = "CoreDump.Tensor.Snoc_1"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_1.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Snoc_1.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Snoc_1.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_1.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Snoc_1.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Snoc_1.$trModule3 CoreDump.Tensor.Snoc_1.$trModule1
+
+-- RHS size: {terms: 41, types: 57, coercions: 4, joins: 0/0}
+snoc_1_
+  :: Tensor '[2, 3, 4] Float
+     -> Tensor '[2, 4] Float -> Tensor '[2, 4, 4] Float
+snoc_1_
+  = \ (st :: Tensor '[2, 3, 4] Float) (t :: Tensor '[2, 4] Float) ->
+      case st `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'4'Float dt29 dt30 dt31 dt32 dt33 dt34
+                                         dt35 dt36 ->
+      (TensorInstances.Tensor'2'4'4'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt4
+         dt5
+         dt6
+         dt7
+         dt8
+         dt9
+         dt10
+         dt11
+         dt29
+         dt30
+         dt31
+         dt32
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt17
+         dt18
+         dt19
+         dt20
+         dt21
+         dt22
+         dt23
+         dt33
+         dt34
+         dt35
+         dt36)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Snoc_1.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Snoc_1 where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+snoc_1_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 4] Float -> Tensor '[2, 4, 4] Float
+snoc_1_ st t = snoc @1 st t
+ tests/CoreDump/Tensor/Snoc_2.dump-simpl.ghc821.golden view
@@ -0,0 +1,79 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:10.557035 UTC
+
+Result size of Tidy Core
+  = {terms: 54, types: 96, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_2.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Snoc_2.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_2.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Snoc_2.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Snoc_2.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_2.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Snoc_2.$trModule2 = "CoreDump.Tensor.Snoc_2"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_2.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Snoc_2.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Snoc_2.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Snoc_2.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Snoc_2.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Snoc_2.$trModule3 CoreDump.Tensor.Snoc_2.$trModule1
+
+-- RHS size: {terms: 39, types: 55, coercions: 4, joins: 0/0}
+snoc_2_
+  :: Tensor '[2, 3, 4] Float
+     -> Tensor '[2, 3] Float -> Tensor '[2, 3, 5] Float
+snoc_2_
+  = \ (st :: Tensor '[2, 3, 4] Float) (t :: Tensor '[2, 3] Float) ->
+      case st `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case t `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'Float dt29 dt30 dt31 dt32 dt33 dt34 ->
+      (TensorInstances.Tensor'2'3'5'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt29
+         dt4
+         dt5
+         dt6
+         dt7
+         dt30
+         dt8
+         dt9
+         dt10
+         dt11
+         dt31
+         dt12
+         dt13
+         dt14
+         dt15
+         dt32
+         dt16
+         dt17
+         dt18
+         dt19
+         dt33
+         dt20
+         dt21
+         dt22
+         dt23
+         dt34)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/Snoc_2.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Snoc_2 where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+snoc_2_ :: Tensor '[2, 3, 4] Float -> Tensor '[2, 3] Float -> Tensor '[2, 3, 5] Float
+snoc_2_ st t = snoc @2 st t
+ tests/CoreDump/Tensor/SubtensorOver.dump-simpl.ghc821.golden view
@@ -0,0 +1,81 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:10.0022274 UTC
+
+Result size of Tidy Core
+  = {terms: 53, types: 158, coercions: 414, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorOver.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.SubtensorOver.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorOver.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.SubtensorOver.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.SubtensorOver.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorOver.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.SubtensorOver.$trModule2
+  = "CoreDump.Tensor.SubtensorOver"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorOver.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.SubtensorOver.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.SubtensorOver.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorOver.$trModule :: GHC.Types.Module
+CoreDump.Tensor.SubtensorOver.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.SubtensorOver.$trModule3
+      CoreDump.Tensor.SubtensorOver.$trModule1
+
+-- RHS size: {terms: 38, types: 85, coercions: 414, joins: 0/0}
+subtensorOver_
+  :: (Subtensor '[0, 1] '[2, 3, 4] Float
+      -> Subtensor '[0, 1] '[2, 3, 4] Float)
+     -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+subtensorOver_
+  = \ (f :: Subtensor '[0, 1] '[2, 3, 4] Float
+            -> Subtensor '[0, 1] '[2, 3, 4] Float)
+      (eta :: Tensor '[2, 3, 4] Float) ->
+      case eta `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case (f ((TensorInstances.Tensor'4'Float dt4 dt5 dt6 dt7)
+               `cast` <Co:213>))
+           `cast` <Co:198>
+      of
+      { TensorInstances.Tensor'4'Float dt29 dt30 dt31 dt32 ->
+      (TensorInstances.Tensor'2'3'4'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt29
+         dt30
+         dt31
+         dt32
+         dt8
+         dt9
+         dt10
+         dt11
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt17
+         dt18
+         dt19
+         dt20
+         dt21
+         dt22
+         dt23)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/SubtensorOver.hs view
@@ -0,0 +1,14 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.SubtensorOver where
+
+import Control.Lens
+import Data.Tensor.Static
+import TensorInstances ()
+
+subtensorOver_ ::
+       (Subtensor '[0, 1] '[2, 3, 4] Float -> Subtensor '[0, 1] '[2, 3, 4] Float)
+    -> Tensor '[2, 3, 4] Float
+    -> Tensor '[2, 3, 4] Float
+subtensorOver_ f = over (subtensor @'[0, 1] @'[2, 3, 4]) f      -- Had to provide 'f' arg here because 'over' is inlined only with 2 or more args.
+ tests/CoreDump/Tensor/SubtensorSet.dump-simpl.ghc821.golden view
@@ -0,0 +1,76 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:09.4870127 UTC
+
+Result size of Tidy Core
+  = {terms: 48, types: 116, coercions: 206, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorSet.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.SubtensorSet.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorSet.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.SubtensorSet.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.SubtensorSet.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorSet.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.SubtensorSet.$trModule2
+  = "CoreDump.Tensor.SubtensorSet"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorSet.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.SubtensorSet.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.SubtensorSet.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorSet.$trModule :: GHC.Types.Module
+CoreDump.Tensor.SubtensorSet.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.SubtensorSet.$trModule3
+      CoreDump.Tensor.SubtensorSet.$trModule1
+
+-- RHS size: {terms: 33, types: 64, coercions: 206, joins: 0/0}
+subtensorSet_
+  :: Subtensor '[1, 2] '[2, 3, 4] Float
+     -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+subtensorSet_
+  = \ (st :: Subtensor '[1, 2] '[2, 3, 4] Float)
+      (eta :: Tensor '[2, 3, 4] Float) ->
+      case eta `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case st `cast` <Co:203> of
+      { TensorInstances.Tensor'4'Float dt29 dt30 dt31 dt32 ->
+      (TensorInstances.Tensor'2'3'4'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt4
+         dt5
+         dt6
+         dt7
+         dt8
+         dt9
+         dt10
+         dt11
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt17
+         dt18
+         dt19
+         dt29
+         dt30
+         dt31
+         dt32)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/SubtensorSet.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.SubtensorSet where
+
+import Control.Lens
+import Data.Tensor.Static
+import TensorInstances ()
+
+subtensorSet_ :: Subtensor '[1, 2] '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+subtensorSet_ st = set (subtensor @'[1, 2] @'[2, 3, 4]) st      -- Had to provide 'st' arg here because 'set' is inlined only with 2 or more args.
+ tests/CoreDump/Tensor/SubtensorView.dump-simpl.ghc821.golden view
@@ -0,0 +1,45 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:08.9129798 UTC
+
+Result size of Tidy Core
+  = {terms: 24, types: 63, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorView.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.SubtensorView.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorView.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.SubtensorView.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.SubtensorView.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorView.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.SubtensorView.$trModule2
+  = "CoreDump.Tensor.SubtensorView"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorView.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.SubtensorView.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.SubtensorView.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.SubtensorView.$trModule :: GHC.Types.Module
+CoreDump.Tensor.SubtensorView.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.SubtensorView.$trModule3
+      CoreDump.Tensor.SubtensorView.$trModule1
+
+-- RHS size: {terms: 9, types: 38, coercions: 3, joins: 0/0}
+subtensorView_ :: Tensor '[2, 3, 4] Float -> Tensor '[4] Float
+subtensorView_
+  = \ (s1 :: Tensor '[2, 3, 4] Float) ->
+      case s1 `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      (TensorInstances.Tensor'4'Float dt16 dt17 dt18 dt19) `cast` <Co:2>
+      }
+
+
+ tests/CoreDump/Tensor/SubtensorView.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.SubtensorView where
+
+import Control.Lens
+import Data.Tensor.Static
+import TensorInstances ()
+
+subtensorView_ :: Tensor '[2, 3, 4] Float -> Tensor '[4] Float
+subtensorView_ = view (subtensor @'[1, 1])
+ tests/CoreDump/Tensor/TensorElemOver.dump-simpl.ghc821.golden view
@@ -0,0 +1,74 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:08.4711701 UTC
+
+Result size of Tidy Core
+  = {terms: 50, types: 75, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemOver.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.TensorElemOver.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemOver.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.TensorElemOver.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.TensorElemOver.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemOver.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.TensorElemOver.$trModule2
+  = "CoreDump.Tensor.TensorElemOver"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemOver.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.TensorElemOver.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.TensorElemOver.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemOver.$trModule :: GHC.Types.Module
+CoreDump.Tensor.TensorElemOver.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.TensorElemOver.$trModule3
+      CoreDump.Tensor.TensorElemOver.$trModule1
+
+-- RHS size: {terms: 35, types: 42, coercions: 3, joins: 0/0}
+tensorElemOver_
+  :: (Float -> Float)
+     -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+tensorElemOver_
+  = \ (f :: Float -> Float) (eta :: Tensor '[2, 3, 4] Float) ->
+      case eta `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case f (GHC.Types.F# dt17) of { GHC.Types.F# dt30 ->
+      (TensorInstances.Tensor'2'3'4'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt4
+         dt5
+         dt6
+         dt7
+         dt8
+         dt9
+         dt10
+         dt11
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt30
+         dt18
+         dt19
+         dt20
+         dt21
+         dt22
+         dt23)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/TensorElemOver.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.TensorElemOver where
+
+import Control.Lens
+import Data.Tensor.Static
+import TensorInstances ()
+
+tensorElemOver_ :: (Float -> Float) -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+tensorElemOver_ f = over (tensorElem @'[1, 1, 1]) f      -- Had to provide 'f' arg here because 'over' is inlined only with 2 or more args.
+ tests/CoreDump/Tensor/TensorElemSet.dump-simpl.ghc821.golden view
@@ -0,0 +1,73 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:07.8233659 UTC
+
+Result size of Tidy Core
+  = {terms: 48, types: 73, coercions: 3, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemSet.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.TensorElemSet.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemSet.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.TensorElemSet.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.TensorElemSet.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemSet.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.TensorElemSet.$trModule2
+  = "CoreDump.Tensor.TensorElemSet"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemSet.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.TensorElemSet.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.TensorElemSet.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemSet.$trModule :: GHC.Types.Module
+CoreDump.Tensor.TensorElemSet.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.TensorElemSet.$trModule3
+      CoreDump.Tensor.TensorElemSet.$trModule1
+
+-- RHS size: {terms: 33, types: 41, coercions: 3, joins: 0/0}
+tensorElemSet_
+  :: Float -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+tensorElemSet_
+  = \ (e :: Float) (s1 :: Tensor '[2, 3, 4] Float) ->
+      case s1 `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      case e of { GHC.Types.F# dt30 ->
+      (TensorInstances.Tensor'2'3'4'Float
+         dt
+         dt1
+         dt2
+         dt3
+         dt4
+         dt5
+         dt6
+         dt7
+         dt8
+         dt9
+         dt10
+         dt11
+         dt12
+         dt13
+         dt14
+         dt15
+         dt16
+         dt30
+         dt18
+         dt19
+         dt20
+         dt21
+         dt22
+         dt23)
+      `cast` <Co:2>
+      }
+      }
+
+
+ tests/CoreDump/Tensor/TensorElemSet.hs view
@@ -0,0 +1,12 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.TensorElemSet where
+
+import Control.Lens
+import Data.Tensor.Static
+import TensorInstances ()
+
+tensorElemSet_ :: Float -> Tensor '[2, 3, 4] Float -> Tensor '[2, 3, 4] Float
+tensorElemSet_ e = set (tensorElem @'[1, 1, 1]) e      -- Had to provide 'e' arg here because 'set' is inlined only with 2 or more args.
+
+ tests/CoreDump/Tensor/TensorElemView.dump-simpl.ghc821.golden view
@@ -0,0 +1,51 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:07.1671647 UTC
+
+Result size of Tidy Core
+  = {terms: 23, types: 74, coercions: 78, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemView.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.TensorElemView.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemView.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.TensorElemView.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.TensorElemView.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemView.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.TensorElemView.$trModule2
+  = "CoreDump.Tensor.TensorElemView"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemView.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.TensorElemView.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.TensorElemView.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.TensorElemView.$trModule :: GHC.Types.Module
+CoreDump.Tensor.TensorElemView.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.TensorElemView.$trModule3
+      CoreDump.Tensor.TensorElemView.$trModule1
+
+-- RHS size: {terms: 6, types: 38, coercions: 8, joins: 0/0}
+CoreDump.Tensor.TensorElemView.tensorElemView_1
+  :: Tensor '[2, 3, 4] Float -> Tensor '[] Float
+CoreDump.Tensor.TensorElemView.tensorElemView_1
+  = \ (x :: Tensor '[2, 3, 4] Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'2'3'4'Float dt dt1 dt2 dt3 dt4 dt5 dt6 dt7
+                                           dt8 dt9 dt10 dt11 dt12 dt13 dt14 dt15 dt16 dt17 dt18 dt19
+                                           dt20 dt21 dt22 dt23 ->
+      (GHC.Types.F# dt17) `cast` <Co:7>
+      }
+
+-- RHS size: {terms: 1, types: 0, coercions: 70, joins: 0/0}
+tensorElemView_ :: Tensor '[2, 3, 4] Float -> Float
+tensorElemView_
+  = CoreDump.Tensor.TensorElemView.tensorElemView_1 `cast` <Co:70>
+
+
+ tests/CoreDump/Tensor/TensorElemView.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.TensorElemView where
+
+import Control.Lens
+import Data.Tensor.Static
+import TensorInstances ()
+
+tensorElemView_ :: Tensor '[2, 3, 4] Float -> Float
+tensorElemView_ = view (tensorElem @'[1, 1, 1])
+ tests/CoreDump/Tensor/Zero.dump-simpl.ghc821.golden view
@@ -0,0 +1,65 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:06.5879636 UTC
+
+Result size of Tidy Core
+  = {terms: 42, types: 19, coercions: 2, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Zero.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Tensor.Zero.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Zero.$trModule3 :: GHC.Types.TrName
+CoreDump.Tensor.Zero.$trModule3
+  = GHC.Types.TrNameS CoreDump.Tensor.Zero.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Zero.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Tensor.Zero.$trModule2 = "CoreDump.Tensor.Zero"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Zero.$trModule1 :: GHC.Types.TrName
+CoreDump.Tensor.Zero.$trModule1
+  = GHC.Types.TrNameS CoreDump.Tensor.Zero.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Zero.$trModule :: GHC.Types.Module
+CoreDump.Tensor.Zero.$trModule
+  = GHC.Types.Module
+      CoreDump.Tensor.Zero.$trModule3 CoreDump.Tensor.Zero.$trModule1
+
+-- RHS size: {terms: 25, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Tensor.Zero.zero_1 :: TensorInstances.R:Tensor:Float25
+CoreDump.Tensor.Zero.zero_1
+  = TensorInstances.Tensor'2'3'4'Float
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+      0.0#
+
+-- RHS size: {terms: 1, types: 0, coercions: 2, joins: 0/0}
+zero_ :: Tensor '[2, 3, 4] Float
+zero_ = CoreDump.Tensor.Zero.zero_1 `cast` <Co:2>
+
+
+ tests/CoreDump/Tensor/Zero.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Tensor.Zero where
+
+import Data.Tensor.Static
+import TensorInstances ()
+
+zero_ :: Tensor '[2, 3, 4] Float
+zero_ = zero
+ tests/CoreDump/Vector/Cross.dump-simpl.ghc821.golden view
@@ -0,0 +1,51 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:06.5099635 UTC
+
+Result size of Tidy Core
+  = {terms: 45, types: 28, coercions: 4, joins: 0/0}
+
+-- RHS size: {terms: 30, types: 14, coercions: 4, joins: 0/0}
+cross_ :: Vector 3 Float -> Vector 3 Float -> Vector 3 Float
+cross_
+  = \ (t0 :: Vector 3 Float) (t1 :: Vector 3 Float) ->
+      case t0 `cast` <Co:1> of
+      { TensorInstances.Tensor'3'Float dt dt1 dt2 ->
+      case t1 `cast` <Co:1> of
+      { TensorInstances.Tensor'3'Float dt4 dt5 dt6 ->
+      (TensorInstances.Tensor'3'Float
+         (GHC.Prim.minusFloat#
+            (GHC.Prim.timesFloat# dt1 dt6) (GHC.Prim.timesFloat# dt2 dt5))
+         (GHC.Prim.minusFloat#
+            (GHC.Prim.timesFloat# dt2 dt4) (GHC.Prim.timesFloat# dt dt6))
+         (GHC.Prim.minusFloat#
+            (GHC.Prim.timesFloat# dt dt5) (GHC.Prim.timesFloat# dt1 dt4)))
+      `cast` <Co:2>
+      }
+      }
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Cross.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Vector.Cross.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Cross.$trModule3 :: GHC.Types.TrName
+CoreDump.Vector.Cross.$trModule3
+  = GHC.Types.TrNameS CoreDump.Vector.Cross.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Cross.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Vector.Cross.$trModule2 = "CoreDump.Vector.Cross"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Cross.$trModule1 :: GHC.Types.TrName
+CoreDump.Vector.Cross.$trModule1
+  = GHC.Types.TrNameS CoreDump.Vector.Cross.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Cross.$trModule :: GHC.Types.Module
+CoreDump.Vector.Cross.$trModule
+  = GHC.Types.Module
+      CoreDump.Vector.Cross.$trModule3 CoreDump.Vector.Cross.$trModule1
+
+
+ tests/CoreDump/Vector/Cross.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Vector.Cross where
+
+import Data.Vector.Static
+import TensorInstances ()
+
+cross_ :: Vector 3 Float -> Vector 3 Float -> Vector 3 Float
+cross_ = cross
+ tests/CoreDump/Vector/Dot.dump-simpl.ghc821.golden view
@@ -0,0 +1,50 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:06.3695632 UTC
+
+Result size of Tidy Core
+  = {terms: 39, types: 28, coercions: 2, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Dot.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Vector.Dot.$trModule2 = "CoreDump.Vector.Dot"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Dot.$trModule1 :: GHC.Types.TrName
+CoreDump.Vector.Dot.$trModule1
+  = GHC.Types.TrNameS CoreDump.Vector.Dot.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Dot.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Vector.Dot.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Dot.$trModule3 :: GHC.Types.TrName
+CoreDump.Vector.Dot.$trModule3
+  = GHC.Types.TrNameS CoreDump.Vector.Dot.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Dot.$trModule :: GHC.Types.Module
+CoreDump.Vector.Dot.$trModule
+  = GHC.Types.Module
+      CoreDump.Vector.Dot.$trModule3 CoreDump.Vector.Dot.$trModule1
+
+-- RHS size: {terms: 24, types: 16, coercions: 2, joins: 0/0}
+dot_ :: Vector 4 Float -> Vector 4 Float -> Float
+dot_
+  = \ (v1 :: Vector 4 Float) (v2 :: Vector 4 Float) ->
+      case v1 `cast` <Co:1> of
+      { TensorInstances.Tensor'4'Float dt dt1 dt2 dt3 ->
+      case v2 `cast` <Co:1> of
+      { TensorInstances.Tensor'4'Float dt4 dt5 dt6 dt7 ->
+      GHC.Types.F#
+        (GHC.Prim.plusFloat#
+           (GHC.Prim.plusFloat#
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.timesFloat# dt3 dt7) (GHC.Prim.timesFloat# dt2 dt6))
+              (GHC.Prim.timesFloat# dt1 dt5))
+           (GHC.Prim.timesFloat# dt dt4))
+      }
+      }
+
+
+ tests/CoreDump/Vector/Dot.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Vector.Dot where
+
+import Data.Vector.Static
+import TensorInstances ()
+
+dot_ :: Vector 4 Float -> Vector 4 Float -> Float
+dot_ = dot
+ tests/CoreDump/Vector/Normalize.dump-simpl.ghc821.golden view
@@ -0,0 +1,59 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:05.9317624 UTC
+
+Result size of Tidy Core
+  = {terms: 52, types: 20, coercions: 8, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Normalize.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Vector.Normalize.$trModule2 = "CoreDump.Vector.Normalize"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Normalize.$trModule1 :: GHC.Types.TrName
+CoreDump.Vector.Normalize.$trModule1
+  = GHC.Types.TrNameS CoreDump.Vector.Normalize.$trModule2
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Normalize.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Vector.Normalize.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Normalize.$trModule3 :: GHC.Types.TrName
+CoreDump.Vector.Normalize.$trModule3
+  = GHC.Types.TrNameS CoreDump.Vector.Normalize.$trModule4
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.Normalize.$trModule :: GHC.Types.Module
+CoreDump.Vector.Normalize.$trModule
+  = GHC.Types.Module
+      CoreDump.Vector.Normalize.$trModule3
+      CoreDump.Vector.Normalize.$trModule1
+
+-- RHS size: {terms: 37, types: 9, coercions: 8, joins: 0/0}
+normalize_ :: Vector 4 Float -> NormalizedVector 4 Float
+normalize_
+  = \ (v :: Vector 4 Float) ->
+      case v `cast` <Co:1> of
+      { TensorInstances.Tensor'4'Float dt dt1 dt2 dt3 ->
+      case GHC.Prim.divideFloat#
+             1.0#
+             (GHC.Prim.sqrtFloat#
+                (GHC.Prim.plusFloat#
+                   (GHC.Prim.plusFloat#
+                      (GHC.Prim.plusFloat#
+                         (GHC.Prim.timesFloat# dt3 dt3) (GHC.Prim.timesFloat# dt2 dt2))
+                      (GHC.Prim.timesFloat# dt1 dt1))
+                   (GHC.Prim.timesFloat# dt dt)))
+      of wild4
+      { __DEFAULT ->
+      (TensorInstances.Tensor'4'Float
+         (GHC.Prim.timesFloat# dt wild4)
+         (GHC.Prim.timesFloat# dt1 wild4)
+         (GHC.Prim.timesFloat# dt2 wild4)
+         (GHC.Prim.timesFloat# dt3 wild4))
+      `cast` <Co:7>
+      }
+      }
+
+
+ tests/CoreDump/Vector/Normalize.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Vector.Normalize where
+
+import Data.Vector.Static
+import TensorInstances ()
+
+normalize_ :: Vector 4 Float -> NormalizedVector 4 Float
+normalize_ = normalize
+ tests/CoreDump/Vector/VectorLen.dump-simpl.ghc821.golden view
@@ -0,0 +1,49 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:05.6353619 UTC
+
+Result size of Tidy Core
+  = {terms: 36, types: 17, coercions: 1, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.VectorLen.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Vector.VectorLen.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.VectorLen.$trModule3 :: GHC.Types.TrName
+CoreDump.Vector.VectorLen.$trModule3
+  = GHC.Types.TrNameS CoreDump.Vector.VectorLen.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.VectorLen.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Vector.VectorLen.$trModule2 = "CoreDump.Vector.VectorLen"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.VectorLen.$trModule1 :: GHC.Types.TrName
+CoreDump.Vector.VectorLen.$trModule1
+  = GHC.Types.TrNameS CoreDump.Vector.VectorLen.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.VectorLen.$trModule :: GHC.Types.Module
+CoreDump.Vector.VectorLen.$trModule
+  = GHC.Types.Module
+      CoreDump.Vector.VectorLen.$trModule3
+      CoreDump.Vector.VectorLen.$trModule1
+
+-- RHS size: {terms: 21, types: 8, coercions: 1, joins: 0/0}
+vectorLen_ :: Vector 4 Float -> Float
+vectorLen_
+  = \ (x :: Vector 4 Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'4'Float dt dt1 dt2 dt3 ->
+      GHC.Types.F#
+        (GHC.Prim.sqrtFloat#
+           (GHC.Prim.plusFloat#
+              (GHC.Prim.plusFloat#
+                 (GHC.Prim.plusFloat#
+                    (GHC.Prim.timesFloat# dt3 dt3) (GHC.Prim.timesFloat# dt2 dt2))
+                 (GHC.Prim.timesFloat# dt1 dt1))
+              (GHC.Prim.timesFloat# dt dt)))
+      }
+
+
+ tests/CoreDump/Vector/VectorLen.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Vector.VectorLen where
+
+import Data.Vector.Static
+import TensorInstances ()
+
+vectorLen_ :: Vector 4 Float -> Float
+vectorLen_ = vectorLen
+ tests/CoreDump/Vector/VectorLenSquare.dump-simpl.ghc821.golden view
@@ -0,0 +1,56 @@+
+==================== Tidy Core ====================
+2017-09-08 01:36:05.5261617 UTC
+
+Result size of Tidy Core
+  = {terms: 37, types: 24, coercions: 63, joins: 0/0}
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.VectorLenSquare.$trModule4 :: GHC.Prim.Addr#
+CoreDump.Vector.VectorLenSquare.$trModule4 = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.VectorLenSquare.$trModule3 :: GHC.Types.TrName
+CoreDump.Vector.VectorLenSquare.$trModule3
+  = GHC.Types.TrNameS CoreDump.Vector.VectorLenSquare.$trModule4
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.VectorLenSquare.$trModule2 :: GHC.Prim.Addr#
+CoreDump.Vector.VectorLenSquare.$trModule2
+  = "CoreDump.Vector.VectorLenSquare"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.VectorLenSquare.$trModule1 :: GHC.Types.TrName
+CoreDump.Vector.VectorLenSquare.$trModule1
+  = GHC.Types.TrNameS CoreDump.Vector.VectorLenSquare.$trModule2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+CoreDump.Vector.VectorLenSquare.$trModule :: GHC.Types.Module
+CoreDump.Vector.VectorLenSquare.$trModule
+  = GHC.Types.Module
+      CoreDump.Vector.VectorLenSquare.$trModule3
+      CoreDump.Vector.VectorLenSquare.$trModule1
+
+-- RHS size: {terms: 20, types: 8, coercions: 51, joins: 0/0}
+CoreDump.Vector.VectorLenSquare.vectorLenSquare_1
+  :: Vector 4 Float -> Data.MonoTraversable.Element (Vector 4 Float)
+CoreDump.Vector.VectorLenSquare.vectorLenSquare_1
+  = \ (x :: Vector 4 Float) ->
+      case x `cast` <Co:1> of
+      { TensorInstances.Tensor'4'Float dt dt1 dt2 dt3 ->
+      (GHC.Types.F#
+         (GHC.Prim.plusFloat#
+            (GHC.Prim.plusFloat#
+               (GHC.Prim.plusFloat#
+                  (GHC.Prim.timesFloat# dt3 dt3) (GHC.Prim.timesFloat# dt2 dt2))
+               (GHC.Prim.timesFloat# dt1 dt1))
+            (GHC.Prim.timesFloat# dt dt)))
+      `cast` <Co:50>
+      }
+
+-- RHS size: {terms: 1, types: 0, coercions: 12, joins: 0/0}
+vectorLenSquare_ :: Vector 4 Float -> Float
+vectorLenSquare_
+  = CoreDump.Vector.VectorLenSquare.vectorLenSquare_1 `cast` <Co:12>
+
+
+ tests/CoreDump/Vector/VectorLenSquare.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+
+module CoreDump.Vector.VectorLenSquare where
+
+import Data.Vector.Static
+import TensorInstances ()
+
+vectorLenSquare_ :: Vector 4 Float -> Float
+vectorLenSquare_ = vectorLenSquare
+ tests/TensorInstances.hs view
@@ -0,0 +1,46 @@+{-# LANGUAGE TypeFamilies          #-}
+{-# LANGUAGE MultiParamTypeClasses #-}
+{-# LANGUAGE TypeSynonymInstances  #-}
+{-# LANGUAGE DataKinds             #-}
+{-# LANGUAGE KindSignatures        #-}
+{-# LANGUAGE TypeOperators         #-}
+{-# LANGUAGE FlexibleInstances     #-}
+{-# LANGUAGE FlexibleContexts      #-}
+{-# LANGUAGE ScopedTypeVariables   #-}
+{-# LANGUAGE DeriveGeneric         #-}
+{-# LANGUAGE DeriveAnyClass        #-}
+{-# LANGUAGE TemplateHaskell       #-}
+{-# LANGUAGE StandaloneDeriving    #-}
+{-# LANGUAGE UndecidableInstances  #-}
+{-# LANGUAGE TypeApplications      #-}
+{-# LANGUAGE TypeInType            #-}
+{-# LANGUAGE AllowAmbiguousTypes   #-}
+{-# LANGUAGE ConstraintKinds       #-}
+{-# LANGUAGE GADTs                 #-}
+{-# OPTIONS_GHC -fno-warn-orphans  #-}
+
+module TensorInstances where
+
+import Data.Tensor.Static.TH
+import qualified Data.List.NonEmpty as N
+
+$(genTensorInstance (N.fromList [3])       ''Float)
+$(genTensorInstance (N.fromList [4])       ''Float)
+$(genTensorInstance (N.fromList [2, 3])    ''Float)
+$(genTensorInstance (N.fromList [2, 4])    ''Float)
+$(genTensorInstance (N.fromList [3, 3])    ''Float)
+$(genTensorInstance (N.fromList [3, 4])    ''Float)
+$(genTensorInstance (N.fromList [4, 3])    ''Float)
+$(genTensorInstance (N.fromList [4, 4])    ''Float)
+$(genTensorInstance (N.fromList [5, 5])    ''Float)
+$(genTensorInstance (N.fromList [1, 3, 4]) ''Float)
+$(genTensorInstance (N.fromList [2, 2, 2]) ''Float)
+$(genTensorInstance (N.fromList [2, 2, 4]) ''Float)
+$(genTensorInstance (N.fromList [2, 3, 3]) ''Float)
+$(genTensorInstance (N.fromList [2, 3, 4]) ''Float)
+$(genTensorInstance (N.fromList [2, 3, 5]) ''Float)
+$(genTensorInstance (N.fromList [2, 4, 4]) ''Float)
+$(genTensorInstance (N.fromList [3, 3, 4]) ''Float)
+$(genTensorInstance (N.fromList [4, 3, 4]) ''Float)
+$(genTensorInstance (N.fromList [2, 6, 4]) ''Float)
+$(genTensorInstance (N.fromList [2, 3, 8]) ''Float)