==================== 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>
      }