summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lc/Builtins.lc34
-rw-r--r--lc/Prelude.lc6
-rw-r--r--src/LambdaCube/Compiler/CoreToIR.hs2
-rw-r--r--testdata/Builtins.out2979
-rw-r--r--testdata/Prelude.out1530
-rw-r--r--testdata/helloWorld.out2
6 files changed, 2284 insertions, 2269 deletions
diff --git a/lc/Builtins.lc b/lc/Builtins.lc
index e123b4bd..c1991a2b 100644
--- a/lc/Builtins.lc
+++ b/lc/Builtins.lc
@@ -346,10 +346,19 @@ type family RemSemantics a where
346 346
347------------------- 347-------------------
348 348
349data Maybe a
350 = Nothing
351 | Just a
352-- deriving (Eq, Ord, Show)
353
349data Vector (n :: Nat) t 354data Vector (n :: Nat) t
350 355
351data Fragment (l :: Nat) t 356type Fragment n t = Vector n (Maybe (SimpleFragment t))
352 = Fragment (Vec 3 Float) (Vector l t) 357
358data SimpleFragment t = SimpleFragment
359 { sFragmentCoords :: Vec 3 Float
360 , sFragmentValue :: t
361 }
353 362
354type FragmentStream n t = Stream (Fragment n t) 363type FragmentStream n t = Stream (Fragment n t)
355 364
@@ -358,6 +367,17 @@ customizeDepth :: (a -> Float) -> Fragment n a -> Fragment n a
358customizeDepths :: (a -> Float) -> FragmentStream n a -> FragmentStream n a 367customizeDepths :: (a -> Float) -> FragmentStream n a -> FragmentStream n a
359customizeDepths f = mapStream (customizeDepth f) 368customizeDepths f = mapStream (customizeDepth f)
360 369
370filterFragment :: (a -> Bool) -> Fragment n a -> Fragment n a
371
372filterFragments :: (a -> Bool) -> FragmentStream n a -> FragmentStream n a
373filterFragments p = mapStream (filterFragment p)
374
375mapFragment :: (a -> b) -> Fragment n a -> Fragment n b
376
377mapFragments :: (a -> b) -> FragmentStream n a -> FragmentStream n b
378mapFragments f = mapStream (mapFragment f)
379
380
361data Interpolated t where 381data Interpolated t where
362 Smooth, NoPerspective 382 Smooth, NoPerspective
363 :: (Floating t) => Interpolated t 383 :: (Floating t) => Interpolated t
@@ -380,16 +400,6 @@ rasterize
380rasterizePrimitives ctx is = concatMapStream (rasterize is ctx) 400rasterizePrimitives ctx is = concatMapStream (rasterize is ctx)
381--rasterizePrimitivesWithPointSize ctx ps is = concatMapStream (rasterize ps is ctx) 401--rasterizePrimitivesWithPointSize ctx ps is = concatMapStream (rasterize ps is ctx)
382 402
383checkFragment :: (a -> Bool) -> Fragment n a -> Bool
384
385filterFragments :: (a -> Bool) -> FragmentStream n a -> FragmentStream n a
386filterFragments p = filterStream (checkFragment p)
387
388mapFragment :: (a -> b) -> Fragment n a -> Fragment n b
389
390mapFragments :: (a -> b) -> FragmentStream n a -> FragmentStream n b
391mapFragments f = mapStream (mapFragment f)
392
393data Image :: Nat -> Type -> Type where 403data Image :: Nat -> Type -> Type where
394 ColorImage :: forall a d t color . (Num t, color ~ VecScalar d t) 404 ColorImage :: forall a d t color . (Num t, color ~ VecScalar d t)
395 => color -> Image a (Color color) 405 => color -> Image a (Color color)
diff --git a/lc/Prelude.lc b/lc/Prelude.lc
index bc89e137..f5d1fee6 100644
--- a/lc/Prelude.lc
+++ b/lc/Prelude.lc
@@ -86,12 +86,6 @@ infixr 5 ++
86iterate :: (a -> a) -> a -> [a] 86iterate :: (a -> a) -> a -> [a]
87iterate f x = x : iterate f (f x) 87iterate f x = x : iterate f (f x)
88 88
89data Maybe a
90 = Nothing
91 | Just a
92-- deriving (Eq, Ord, Show)
93
94
95fst (a, b) = a 89fst (a, b) = a
96snd (a, b) = b 90snd (a, b) = b
97 91
diff --git a/src/LambdaCube/Compiler/CoreToIR.hs b/src/LambdaCube/Compiler/CoreToIR.hs
index 4be0ee8b..a2b50e8a 100644
--- a/src/LambdaCube/Compiler/CoreToIR.hs
+++ b/src/LambdaCube/Compiler/CoreToIR.hs
@@ -207,7 +207,7 @@ getRenderTextureCommands e = foldM (\(a,b) x -> f x >>= (\(c,d) -> return (c:a,d
207 return ((n,IR.TextureImage texture 0 Nothing), subCmds <> (IR.SetRenderTarget rt:cmds)) 207 return ((n,IR.TextureImage texture 0 Nothing), subCmds <> (IR.SetRenderTarget rt:cmds))
208 x -> error $ "getRenderTextureCommands: not supported render texture exp: " ++ ppShow x 208 x -> error $ "getRenderTextureCommands: not supported render texture exp: " ++ ppShow x
209 209
210getFragFilter (Prim2 "filterStream" (EtaPrim2 "checkFragment" p) x) = (Just p, x) 210getFragFilter (Prim2 "mapStream" (EtaPrim2 "filterFragment" p) x) = (Just p, x)
211getFragFilter x = (Nothing, x) 211getFragFilter x = (Nothing, x)
212 212
213getVertexShader (Prim2 "mapStream" (EtaPrim2 "mapPrimitive" f) x) = (f, x) 213getVertexShader (Prim2 "mapStream" (EtaPrim2 "mapPrimitive" f) x) = (f, x)
diff --git a/testdata/Builtins.out b/testdata/Builtins.out
index 6e1e55b6..b10b920f 100644
--- a/testdata/Builtins.out
+++ b/testdata/Builtins.out
@@ -1270,1115 +1270,1032 @@ testdata/Builtins.lc 345:71-345:78 Type->Type
1270testdata/Builtins.lc 345:74-345:75 Type 1270testdata/Builtins.lc 345:74-345:75 Type
1271testdata/Builtins.lc 345:77-345:78 Type 1271testdata/Builtins.lc 345:77-345:78 Type
1272testdata/Builtins.lc 345:80-345:81 Type 1272testdata/Builtins.lc 345:80-345:81 Type
1273testdata/Builtins.lc 349:6-349:12 Nat -> Type->Type | Type 1273testdata/Builtins.lc 349:6-349:11 Type | Type->Type
1274testdata/Builtins.lc 349:19-349:22 Type 1274testdata/Builtins.lc 349:6-351:11 Type
1275testdata/Builtins.lc 351:6-351:14 Nat -> Type->Type | Type 1275testdata/Builtins.lc 349:6-351:13 Type
1276testdata/Builtins.lc 351:6-352:15 Type 1276testdata/Builtins.lc 350:7-350:14 Maybe V1 | {a} -> Maybe a
1277testdata/Builtins.lc 351:6-352:42 Type 1277testdata/Builtins.lc 351:7-351:11 Maybe V3 | Type | {a} -> a -> Maybe a
1278testdata/Builtins.lc 351:21-351:24 Type 1278testdata/Builtins.lc 351:12-351:13 Type
1279testdata/Builtins.lc 352:7-352:15 Fragment V4 V3 | Type | {a:Nat} -> {b} -> VecS Float 3 -> Vector a b -> Fragment a b 1279testdata/Builtins.lc 354:6-354:12 Nat -> Type->Type | Type
1280testdata/Builtins.lc 352:16-352:29 Type 1280testdata/Builtins.lc 354:19-354:22 Type
1281testdata/Builtins.lc 352:17-352:20 Nat -> Type->Type 1281testdata/Builtins.lc 356:6-356:14 Nat -> Type->Type
1282testdata/Builtins.lc 352:17-352:22 Type->Type 1282testdata/Builtins.lc 356:21-356:27 Nat -> Type->Type
1283testdata/Builtins.lc 352:21-352:22 V1 1283testdata/Builtins.lc 356:21-356:29 Type->Type
1284testdata/Builtins.lc 352:23-352:28 Type 1284testdata/Builtins.lc 356:21-356:56 Type
1285testdata/Builtins.lc 352:30-352:42 Type 1285testdata/Builtins.lc 356:28-356:29 V3
1286testdata/Builtins.lc 352:31-352:37 Nat -> Type->Type 1286testdata/Builtins.lc 356:30-356:56 Type
1287testdata/Builtins.lc 352:31-352:39 Type->Type 1287testdata/Builtins.lc 356:31-356:36 Type->Type
1288testdata/Builtins.lc 352:38-352:39 Nat 1288testdata/Builtins.lc 356:37-356:55 Type
1289testdata/Builtins.lc 352:40-352:41 Type 1289testdata/Builtins.lc 356:38-356:52 Type->Type
1290testdata/Builtins.lc 354:6-354:20 Nat -> Type->Type 1290testdata/Builtins.lc 356:53-356:54 V1
1291testdata/Builtins.lc 354:27-354:33 Type->Type 1291testdata/Builtins.lc 358:6-358:20 Type | Type->Type
1292testdata/Builtins.lc 354:27-354:48 Type 1292testdata/Builtins.lc 358:6-358:39 Type
1293testdata/Builtins.lc 354:34-354:48 Type 1293testdata/Builtins.lc 358:6-360:29 Type
1294testdata/Builtins.lc 354:35-354:43 Nat -> Type->Type 1294testdata/Builtins.lc 358:25-358:39 SimpleFragment V3 | Type | V2 | V2->V2 | V3 | VecS Float 3 | VecS Float 3 -> V2->V2 | {a} -> VecS Float 3 -> a -> SimpleFragment a
1295testdata/Builtins.lc 354:35-354:45 Type->Type 1295testdata/Builtins.lc 359:7-359:22 {a} -> SimpleFragment a -> VecS Float 3
1296testdata/Builtins.lc 354:44-354:45 V3 1296testdata/Builtins.lc 359:28-359:31 Nat -> Type->Type
1297testdata/Builtins.lc 354:46-354:47 V1 1297testdata/Builtins.lc 359:28-359:33 Type->Type
1298testdata/Builtins.lc 356:1-356:15 {a} -> {b:Nat} -> a->Float -> Fragment b a -> Fragment b a 1298testdata/Builtins.lc 359:28-359:39 Type
1299testdata/Builtins.lc 356:19-356:63 Type 1299testdata/Builtins.lc 359:32-359:33 V1
1300testdata/Builtins.lc 356:20-356:21 V3 1300testdata/Builtins.lc 359:34-359:39 Type
1301testdata/Builtins.lc 356:25-356:30 Type 1301testdata/Builtins.lc 360:7-360:21 {a} -> SimpleFragment a -> a
1302testdata/Builtins.lc 356:35-356:43 Nat -> Type->Type 1302testdata/Builtins.lc 360:28-360:29 Type
1303testdata/Builtins.lc 356:35-356:45 Type->Type 1303testdata/Builtins.lc 363:6-363:20 Nat -> Type->Type
1304testdata/Builtins.lc 356:35-356:47 Type 1304testdata/Builtins.lc 363:27-363:33 Type->Type
1305testdata/Builtins.lc 356:35-356:63 Type 1305testdata/Builtins.lc 363:27-363:48 Type
1306testdata/Builtins.lc 356:44-356:45 V2 1306testdata/Builtins.lc 363:34-363:48 Type
1307testdata/Builtins.lc 356:46-356:47 Type 1307testdata/Builtins.lc 363:35-363:43 Nat -> Type->Type
1308testdata/Builtins.lc 356:51-356:59 Nat -> Type->Type 1308testdata/Builtins.lc 363:35-363:45 Type->Type
1309testdata/Builtins.lc 356:51-356:61 Type->Type 1309testdata/Builtins.lc 363:44-363:45 V3
1310testdata/Builtins.lc 356:51-356:63 Type 1310testdata/Builtins.lc 363:46-363:47 V1
1311testdata/Builtins.lc 356:60-356:61 Nat 1311testdata/Builtins.lc 365:1-365:15 {a} -> {b:Nat} -> a->Float -> Vector b (Maybe (SimpleFragment a)) -> Vector b (Maybe (SimpleFragment a))
1312testdata/Builtins.lc 356:62-356:63 Type 1312testdata/Builtins.lc 365:19-365:63 Type
1313testdata/Builtins.lc 358:20-358:76 Type 1313testdata/Builtins.lc 365:20-365:21 V3
1314testdata/Builtins.lc 358:21-358:22 V3 1314testdata/Builtins.lc 365:25-365:30 Type
1315testdata/Builtins.lc 358:26-358:31 Type 1315testdata/Builtins.lc 365:35-365:43 Nat -> Type->Type
1316testdata/Builtins.lc 358:36-358:50 Nat -> Type->Type 1316testdata/Builtins.lc 365:35-365:45 Type->Type
1317testdata/Builtins.lc 358:36-358:52 Type->Type 1317testdata/Builtins.lc 365:35-365:47 Type
1318testdata/Builtins.lc 358:36-358:54 Type 1318testdata/Builtins.lc 365:35-365:63 Type
1319testdata/Builtins.lc 358:36-358:76 Type 1319testdata/Builtins.lc 365:44-365:45 V2
1320testdata/Builtins.lc 358:51-358:52 V2 1320testdata/Builtins.lc 365:46-365:47 Type
1321testdata/Builtins.lc 358:53-358:54 Type 1321testdata/Builtins.lc 365:51-365:59 Nat -> Type->Type
1322testdata/Builtins.lc 358:58-358:72 Nat -> Type->Type 1322testdata/Builtins.lc 365:51-365:61 Type->Type
1323testdata/Builtins.lc 358:58-358:74 Type->Type 1323testdata/Builtins.lc 365:51-365:63 Type
1324testdata/Builtins.lc 358:58-358:76 Type 1324testdata/Builtins.lc 365:60-365:61 Nat
1325testdata/Builtins.lc 358:73-358:74 Nat 1325testdata/Builtins.lc 365:62-365:63 Type
1326testdata/Builtins.lc 358:75-358:76 Type 1326testdata/Builtins.lc 367:20-367:76 Type
1327testdata/Builtins.lc 359:1-359:16 {a} -> {b:Nat} -> a->Float -> Stream (Fragment b a) -> Stream (Fragment b a) 1327testdata/Builtins.lc 367:21-367:22 V3
1328testdata/Builtins.lc 359:21-359:30 {a} -> {b} -> a->b -> Stream a -> Stream b 1328testdata/Builtins.lc 367:26-367:31 Type
1329testdata/Builtins.lc 359:21-359:49 Stream (Fragment V0 V3) -> Stream (Fragment V1 V4) | V1->Float -> Stream (Fragment V1 V2) -> Stream (Fragment V2 V3) 1329testdata/Builtins.lc 367:36-367:50 Nat -> Type->Type
1330testdata/Builtins.lc 359:31-359:49 Fragment V0 V5 -> Fragment V1 V6 1330testdata/Builtins.lc 367:36-367:52 Type->Type
1331testdata/Builtins.lc 359:32-359:46 {a} -> {b:Nat} -> a->Float -> Fragment b a -> Fragment b a 1331testdata/Builtins.lc 367:36-367:54 Type
1332testdata/Builtins.lc 359:47-359:48 V6->Float 1332testdata/Builtins.lc 367:36-367:76 Type
1333testdata/Builtins.lc 361:6-361:18 Type | Type->Type 1333testdata/Builtins.lc 367:51-367:52 V2
1334testdata/Builtins.lc 361:6-364:7 Type 1334testdata/Builtins.lc 367:53-367:54 Type
1335testdata/Builtins.lc 362:3-362:9 Interpolated V2 | Type | {a} -> {b : Floating a} -> Interpolated a 1335testdata/Builtins.lc 367:58-367:72 Nat -> Type->Type
1336testdata/Builtins.lc 362:11-362:24 Interpolated V3 | Type | {a} -> {b : Floating a} -> Interpolated a 1336testdata/Builtins.lc 367:58-367:74 Type->Type
1337testdata/Builtins.lc 363:26-363:38 Type 1337testdata/Builtins.lc 367:58-367:76 Type
1338testdata/Builtins.lc 363:26-363:56 Type 1338testdata/Builtins.lc 367:73-367:74 Nat
1339testdata/Builtins.lc 363:27-363:35 Type->Type 1339testdata/Builtins.lc 367:75-367:76 Type
1340testdata/Builtins.lc 363:36-363:37 Type 1340testdata/Builtins.lc 368:1-368:16 {a} -> {b:Nat} -> a->Float -> Stream (Vector b (Maybe (SimpleFragment a))) -> Stream (Vector b (Maybe (SimpleFragment a)))
1341testdata/Builtins.lc 363:42-363:54 Type->Type 1341testdata/Builtins.lc 368:21-368:30 {a} -> {b} -> a->b -> Stream a -> Stream b
1342testdata/Builtins.lc 363:42-363:56 Type 1342testdata/Builtins.lc 368:21-368:49 Stream (Vector V0 (Maybe (SimpleFragment V3))) -> Stream (Vector V1 (Maybe (SimpleFragment V4))) | V1->Float -> Stream (Vector V1 (Maybe (SimpleFragment V2))) -> Stream (Vector V2 (Maybe (SimpleFragment V3)))
1343testdata/Builtins.lc 363:55-363:56 Type 1343testdata/Builtins.lc 368:31-368:49 Vector V0 (Maybe (SimpleFragment V5)) -> Vector V1 (Maybe (SimpleFragment V6))
1344testdata/Builtins.lc 364:3-364:7 Interpolated V3 | {a} -> Interpolated a 1344testdata/Builtins.lc 368:32-368:46 {a} -> {b:Nat} -> a->Float -> Vector b (Maybe (SimpleFragment a)) -> Vector b (Maybe (SimpleFragment a))
1345testdata/Builtins.lc 364:42-364:54 Type->Type 1345testdata/Builtins.lc 368:47-368:48 V6->Float
1346testdata/Builtins.lc 364:42-364:56 Type 1346testdata/Builtins.lc 370:1-370:15 {a} -> {b:Nat} -> a->Bool -> Vector b (Maybe (SimpleFragment a)) -> Vector b (Maybe (SimpleFragment a))
1347testdata/Builtins.lc 364:55-364:56 Type 1347testdata/Builtins.lc 370:19-370:62 Type
1348testdata/Builtins.lc 367:5-367:21 Type->Type 1348testdata/Builtins.lc 370:20-370:21 V3
1349testdata/Builtins.lc 367:27-367:29 Type 1349testdata/Builtins.lc 370:25-370:29 Type
1350testdata/Builtins.lc 367:27-370:82 Type | Type->Type 1350testdata/Builtins.lc 370:34-370:42 Nat -> Type->Type
1351testdata/Builtins.lc 368:36-368:37 Type 1351testdata/Builtins.lc 370:34-370:44 Type->Type
1352testdata/Builtins.lc 368:36-368:42 Type->Type 1352testdata/Builtins.lc 370:34-370:46 Type
1353testdata/Builtins.lc 368:36-370:82 Type 1353testdata/Builtins.lc 370:34-370:62 Type
1354testdata/Builtins.lc 368:41-368:42 Type | Type->Type 1354testdata/Builtins.lc 370:43-370:44 V2
1355testdata/Builtins.lc 369:23-369:53 Type 1355testdata/Builtins.lc 370:45-370:46 Type
1356testdata/Builtins.lc 369:23-369:63 Type->Type 1356testdata/Builtins.lc 370:50-370:58 Nat -> Type->Type
1357testdata/Builtins.lc 369:23-370:82 Type 1357testdata/Builtins.lc 370:50-370:60 Type->Type
1358testdata/Builtins.lc 369:57-369:63 Type | Type -> Type->Type | Type->Type 1358testdata/Builtins.lc 370:50-370:62 Type
1359testdata/Builtins.lc 369:58-369:59 Type 1359testdata/Builtins.lc 370:59-370:60 Nat
1360testdata/Builtins.lc 369:61-369:62 Type 1360testdata/Builtins.lc 370:61-370:62 Type
1361testdata/Builtins.lc 370:23-370:69 Type 1361testdata/Builtins.lc 372:20-372:75 Type
1362testdata/Builtins.lc 370:23-370:82 Type->Type 1362testdata/Builtins.lc 372:21-372:22 V3
1363testdata/Builtins.lc 370:73-370:82 Type | Type -> Type -> Type->Type | Type -> Type->Type | Type->Type 1363testdata/Builtins.lc 372:26-372:30 Type
1364testdata/Builtins.lc 370:74-370:75 Type 1364testdata/Builtins.lc 372:35-372:49 Nat -> Type->Type
1365testdata/Builtins.lc 370:74-370:78 Type->Type 1365testdata/Builtins.lc 372:35-372:51 Type->Type
1366testdata/Builtins.lc 370:77-370:78 Type 1366testdata/Builtins.lc 372:35-372:53 Type
1367testdata/Builtins.lc 370:80-370:81 Type 1367testdata/Builtins.lc 372:35-372:75 Type
1368testdata/Builtins.lc 372:1-372:10 {a} -> {b} -> {c} -> {d:PrimitiveType} -> {e : a ~ InterpolatedType b} -> {f : c ~ JoinTupleType (VecS Float 4) a} -> b -> RasterContext c d -> Primitive c d -> Stream (Fragment 1 a) 1368testdata/Builtins.lc 372:50-372:51 V2
1369testdata/Builtins.lc 373:8-378:26 Type 1369testdata/Builtins.lc 372:52-372:53 Type
1370testdata/Builtins.lc 373:10-373:11 V7 1370testdata/Builtins.lc 372:57-372:71 Nat -> Type->Type
1371testdata/Builtins.lc 373:10-373:13 Type->Type 1371testdata/Builtins.lc 372:57-372:73 Type->Type
1372testdata/Builtins.lc 373:10-373:44 Type 1372testdata/Builtins.lc 372:57-372:75 Type
1373testdata/Builtins.lc 373:12-373:13 Type -> Type->Type 1373testdata/Builtins.lc 372:72-372:73 Nat
1374testdata/Builtins.lc 373:14-373:30 Type->Type 1374testdata/Builtins.lc 372:74-372:75 Type
1375testdata/Builtins.lc 373:14-373:44 Type 1375testdata/Builtins.lc 373:1-373:16 {a} -> {b:Nat} -> a->Bool -> Stream (Vector b (Maybe (SimpleFragment a))) -> Stream (Vector b (Maybe (SimpleFragment a)))
1376testdata/Builtins.lc 373:31-373:44 V5 1376testdata/Builtins.lc 373:21-373:30 {a} -> {b} -> a->b -> Stream a -> Stream b
1377testdata/Builtins.lc 374:10-374:11 V4 1377testdata/Builtins.lc 373:21-373:49 Stream (Vector V0 (Maybe (SimpleFragment V3))) -> Stream (Vector V1 (Maybe (SimpleFragment V4))) | V1->Bool -> Stream (Vector V1 (Maybe (SimpleFragment V2))) -> Stream (Vector V2 (Maybe (SimpleFragment V3)))
1378testdata/Builtins.lc 374:10-374:13 Type->Type 1378testdata/Builtins.lc 373:31-373:49 Vector V0 (Maybe (SimpleFragment V5)) -> Vector V1 (Maybe (SimpleFragment V6))
1379testdata/Builtins.lc 374:10-374:43 Type 1379testdata/Builtins.lc 373:32-373:46 {a} -> {b:Nat} -> a->Bool -> Vector b (Maybe (SimpleFragment a)) -> Vector b (Maybe (SimpleFragment a))
1380testdata/Builtins.lc 374:10-378:26 Type 1380testdata/Builtins.lc 373:47-373:48 V6->Bool
1381testdata/Builtins.lc 374:12-374:13 Type -> Type->Type 1381testdata/Builtins.lc 375:1-375:12 {a} -> {b} -> {c:Nat} -> a->b -> Vector c (Maybe (SimpleFragment a)) -> Vector c (Maybe (SimpleFragment b))
1382testdata/Builtins.lc 374:14-374:27 Type -> Type->Type 1382testdata/Builtins.lc 375:16-375:56 Type
1383testdata/Builtins.lc 374:14-374:41 Type->Type 1383testdata/Builtins.lc 375:17-375:18 V5
1384testdata/Builtins.lc 374:14-374:43 Type 1384testdata/Builtins.lc 375:22-375:23 Type | V4
1385testdata/Builtins.lc 374:28-374:41 Type 1385testdata/Builtins.lc 375:28-375:36 Nat -> Type->Type
1386testdata/Builtins.lc 374:29-374:32 Nat -> Type->Type 1386testdata/Builtins.lc 375:28-375:38 Type->Type
1387testdata/Builtins.lc 374:29-374:34 Type->Type 1387testdata/Builtins.lc 375:28-375:40 Type
1388testdata/Builtins.lc 374:33-374:34 V1 1388testdata/Builtins.lc 375:28-375:56 Type
1389testdata/Builtins.lc 374:35-374:40 Type 1389testdata/Builtins.lc 375:37-375:38 V2
1390testdata/Builtins.lc 374:42-374:43 Type 1390testdata/Builtins.lc 375:39-375:40 Type
1391testdata/Builtins.lc 375:8-375:21 Type 1391testdata/Builtins.lc 375:44-375:52 Nat -> Type->Type
1392testdata/Builtins.lc 375:8-378:26 Type 1392testdata/Builtins.lc 375:44-375:54 Type->Type
1393testdata/Builtins.lc 376:8-376:21 Type -> PrimitiveType->Type 1393testdata/Builtins.lc 375:44-375:56 Type
1394testdata/Builtins.lc 376:8-376:23 PrimitiveType->Type 1394testdata/Builtins.lc 375:53-375:54 Nat
1395testdata/Builtins.lc 376:8-376:25 Type 1395testdata/Builtins.lc 375:55-375:56 Type
1396testdata/Builtins.lc 376:8-378:26 Type 1396testdata/Builtins.lc 377:17-377:69 Type
1397testdata/Builtins.lc 376:22-376:23 Type 1397testdata/Builtins.lc 377:18-377:19 V5
1398testdata/Builtins.lc 376:24-376:25 V4 1398testdata/Builtins.lc 377:23-377:24 Type | V4
1399testdata/Builtins.lc 377:8-377:17 Type -> PrimitiveType->Type 1399testdata/Builtins.lc 377:29-377:43 Nat -> Type->Type
1400testdata/Builtins.lc 377:8-377:19 PrimitiveType->Type 1400testdata/Builtins.lc 377:29-377:45 Type->Type
1401testdata/Builtins.lc 377:8-377:21 Type 1401testdata/Builtins.lc 377:29-377:47 Type
1402testdata/Builtins.lc 377:8-378:26 Type 1402testdata/Builtins.lc 377:29-377:69 Type
1403testdata/Builtins.lc 377:18-377:19 Type 1403testdata/Builtins.lc 377:44-377:45 V2
1404testdata/Builtins.lc 377:20-377:21 PrimitiveType 1404testdata/Builtins.lc 377:46-377:47 Type
1405testdata/Builtins.lc 378:8-378:22 Nat -> Type->Type 1405testdata/Builtins.lc 377:51-377:65 Nat -> Type->Type
1406testdata/Builtins.lc 378:8-378:24 Type->Type 1406testdata/Builtins.lc 377:51-377:67 Type->Type
1407testdata/Builtins.lc 378:8-378:26 Type 1407testdata/Builtins.lc 377:51-377:69 Type
1408testdata/Builtins.lc 378:23-378:24 V1 1408testdata/Builtins.lc 377:66-377:67 Nat
1409testdata/Builtins.lc 378:25-378:26 Type 1409testdata/Builtins.lc 377:68-377:69 Type
1410testdata/Builtins.lc 380:1-380:20 {a} -> {b:PrimitiveType} -> RasterContext (JoinTupleType (VecS Float 4) (InterpolatedType a)) b -> a -> Stream (Primitive (JoinTupleType (VecS Float 4) (InterpolatedType a)) b) -> Stream (Fragment 1 (InterpolatedType a)) 1410testdata/Builtins.lc 378:1-378:13 {a} -> {b} -> {c:Nat} -> a->b -> Stream (Vector c (Maybe (SimpleFragment a))) -> Stream (Vector c (Maybe (SimpleFragment b)))
1411testdata/Builtins.lc 380:30-380:45 {a} -> {b} -> (a -> Stream b) -> Stream a -> Stream b 1411testdata/Builtins.lc 378:18-378:27 {a} -> {b} -> a->b -> Stream a -> Stream b
1412testdata/Builtins.lc 380:30-380:64 Stream (Primitive (JoinTupleType (VecS Float 4) (InterpolatedType V2)) V0) -> Stream (Fragment 1 (InterpolatedType V3)) 1412testdata/Builtins.lc 378:18-378:43 Stream (Vector V0 (Maybe (SimpleFragment V4))) -> Stream (Vector V1 (Maybe (SimpleFragment V4))) | V2->V2 -> Stream (Vector V1 (Maybe (SimpleFragment V3))) -> Stream (Vector V2 (Maybe (SimpleFragment V3)))
1413testdata/Builtins.lc 380:46-380:64 Primitive (JoinTupleType (VecS Float 4) (InterpolatedType V2)) V0 -> Stream (Fragment 1 (InterpolatedType V3)) 1413testdata/Builtins.lc 378:28-378:43 Vector V0 (Maybe (SimpleFragment V6)) -> Vector V1 (Maybe (SimpleFragment V6))
1414testdata/Builtins.lc 380:47-380:56 {a} -> {b} -> {c} -> {d:PrimitiveType} -> {e : a ~ InterpolatedType b} -> {f : c ~ JoinTupleType (VecS Float 4) a} -> b -> RasterContext c d -> Primitive c d -> Stream (Fragment 1 a) 1414testdata/Builtins.lc 378:29-378:40 {a} -> {b} -> {c:Nat} -> a->b -> Vector c (Maybe (SimpleFragment a)) -> Vector c (Maybe (SimpleFragment b))
1415testdata/Builtins.lc 380:47-380:59 RasterContext (JoinTupleType (VecS Float 4) (InterpolatedType V4)) V0 -> Primitive (JoinTupleType (VecS Float 4) (InterpolatedType V5)) V1 -> Stream (Fragment 1 (InterpolatedType V6)) 1415testdata/Builtins.lc 378:41-378:42 V8->V8
1416testdata/Builtins.lc 380:57-380:59 V5 1416testdata/Builtins.lc 381:6-381:18 Type | Type->Type
1417testdata/Builtins.lc 380:60-380:63 V4 1417testdata/Builtins.lc 381:6-384:7 Type
1418testdata/Builtins.lc 383:1-383:14 {a} -> {b:Nat} -> a->Bool -> Fragment b a -> Bool 1418testdata/Builtins.lc 382:3-382:9 Interpolated V2 | Type | {a} -> {b : Floating a} -> Interpolated a
1419testdata/Builtins.lc 383:18-383:53 Type 1419testdata/Builtins.lc 382:11-382:24 Interpolated V3 | Type | {a} -> {b : Floating a} -> Interpolated a
1420testdata/Builtins.lc 383:19-383:20 V3 1420testdata/Builtins.lc 383:26-383:38 Type
1421testdata/Builtins.lc 383:24-383:28 Type 1421testdata/Builtins.lc 383:26-383:56 Type
1422testdata/Builtins.lc 383:33-383:41 Nat -> Type->Type 1422testdata/Builtins.lc 383:27-383:35 Type->Type
1423testdata/Builtins.lc 383:33-383:43 Type->Type 1423testdata/Builtins.lc 383:36-383:37 Type
1424testdata/Builtins.lc 383:33-383:45 Type 1424testdata/Builtins.lc 383:42-383:54 Type->Type
1425testdata/Builtins.lc 383:33-383:53 Type 1425testdata/Builtins.lc 383:42-383:56 Type
1426testdata/Builtins.lc 383:42-383:43 V2 1426testdata/Builtins.lc 383:55-383:56 Type
1427testdata/Builtins.lc 383:44-383:45 Type 1427testdata/Builtins.lc 384:3-384:7 Interpolated V3 | {a} -> Interpolated a
1428testdata/Builtins.lc 383:49-383:53 Type 1428testdata/Builtins.lc 384:42-384:54 Type->Type
1429testdata/Builtins.lc 385:20-385:75 Type 1429testdata/Builtins.lc 384:42-384:56 Type
1430testdata/Builtins.lc 385:21-385:22 V3 1430testdata/Builtins.lc 384:55-384:56 Type
1431testdata/Builtins.lc 385:26-385:30 Type 1431testdata/Builtins.lc 387:5-387:21 Type->Type
1432testdata/Builtins.lc 385:35-385:49 Nat -> Type->Type 1432testdata/Builtins.lc 387:27-387:29 Type
1433testdata/Builtins.lc 385:35-385:51 Type->Type 1433testdata/Builtins.lc 387:27-390:82 Type | Type->Type
1434testdata/Builtins.lc 385:35-385:53 Type 1434testdata/Builtins.lc 388:36-388:37 Type
1435testdata/Builtins.lc 385:35-385:75 Type 1435testdata/Builtins.lc 388:36-388:42 Type->Type
1436testdata/Builtins.lc 385:50-385:51 V2 1436testdata/Builtins.lc 388:36-390:82 Type
1437testdata/Builtins.lc 385:52-385:53 Type 1437testdata/Builtins.lc 388:41-388:42 Type | Type->Type
1438testdata/Builtins.lc 385:57-385:71 Nat -> Type->Type 1438testdata/Builtins.lc 389:23-389:53 Type
1439testdata/Builtins.lc 385:57-385:73 Type->Type 1439testdata/Builtins.lc 389:23-389:63 Type->Type
1440testdata/Builtins.lc 385:57-385:75 Type 1440testdata/Builtins.lc 389:23-390:82 Type
1441testdata/Builtins.lc 385:72-385:73 Nat 1441testdata/Builtins.lc 389:57-389:63 Type | Type -> Type->Type | Type->Type
1442testdata/Builtins.lc 385:74-385:75 Type 1442testdata/Builtins.lc 389:58-389:59 Type
1443testdata/Builtins.lc 386:1-386:16 {a} -> {b:Nat} -> a->Bool -> Stream (Fragment b a) -> Stream (Fragment b a) 1443testdata/Builtins.lc 389:61-389:62 Type
1444testdata/Builtins.lc 386:21-386:33 {a} -> a->Bool -> Stream a -> Stream a 1444testdata/Builtins.lc 390:23-390:69 Type
1445testdata/Builtins.lc 386:21-386:51 Stream (Fragment V0 V3) -> Stream (Fragment V1 V4) | V1->Bool -> Stream (Fragment V1 V2) -> Stream (Fragment V2 V3) 1445testdata/Builtins.lc 390:23-390:82 Type->Type
1446testdata/Builtins.lc 386:34-386:51 Fragment V0 V4 -> Bool 1446testdata/Builtins.lc 390:73-390:82 Type | Type -> Type -> Type->Type | Type -> Type->Type | Type->Type
1447testdata/Builtins.lc 386:35-386:48 {a} -> {b:Nat} -> a->Bool -> Fragment b a -> Bool 1447testdata/Builtins.lc 390:74-390:75 Type
1448testdata/Builtins.lc 386:49-386:50 V5->Bool 1448testdata/Builtins.lc 390:74-390:78 Type->Type
1449testdata/Builtins.lc 388:1-388:12 {a} -> {b} -> {c:Nat} -> a->b -> Fragment c a -> Fragment c b 1449testdata/Builtins.lc 390:77-390:78 Type
1450testdata/Builtins.lc 388:16-388:56 Type 1450testdata/Builtins.lc 390:80-390:81 Type
1451testdata/Builtins.lc 388:17-388:18 V5 1451testdata/Builtins.lc 392:1-392:10 {a} -> {b} -> {c} -> {d:PrimitiveType} -> {e : a ~ InterpolatedType b} -> {f : c ~ JoinTupleType (VecS Float 4) a} -> b -> RasterContext c d -> Primitive c d -> Stream (Vector 1 (Maybe (SimpleFragment a)))
1452testdata/Builtins.lc 388:22-388:23 Type | V4 1452testdata/Builtins.lc 393:8-398:26 Type
1453testdata/Builtins.lc 388:28-388:36 Nat -> Type->Type 1453testdata/Builtins.lc 393:10-393:11 V7
1454testdata/Builtins.lc 388:28-388:38 Type->Type 1454testdata/Builtins.lc 393:10-393:13 Type->Type
1455testdata/Builtins.lc 388:28-388:40 Type 1455testdata/Builtins.lc 393:10-393:44 Type
1456testdata/Builtins.lc 388:28-388:56 Type 1456testdata/Builtins.lc 393:12-393:13 Type -> Type->Type
1457testdata/Builtins.lc 388:37-388:38 V2 1457testdata/Builtins.lc 393:14-393:30 Type->Type
1458testdata/Builtins.lc 388:39-388:40 Type 1458testdata/Builtins.lc 393:14-393:44 Type
1459testdata/Builtins.lc 388:44-388:52 Nat -> Type->Type 1459testdata/Builtins.lc 393:31-393:44 V5
1460testdata/Builtins.lc 388:44-388:54 Type->Type 1460testdata/Builtins.lc 394:10-394:11 V4
1461testdata/Builtins.lc 388:44-388:56 Type 1461testdata/Builtins.lc 394:10-394:13 Type->Type
1462testdata/Builtins.lc 388:53-388:54 Nat 1462testdata/Builtins.lc 394:10-394:43 Type
1463testdata/Builtins.lc 388:55-388:56 Type 1463testdata/Builtins.lc 394:10-398:26 Type
1464testdata/Builtins.lc 390:17-390:69 Type 1464testdata/Builtins.lc 394:12-394:13 Type -> Type->Type
1465testdata/Builtins.lc 390:18-390:19 V5 1465testdata/Builtins.lc 394:14-394:27 Type -> Type->Type
1466testdata/Builtins.lc 390:23-390:24 Type | V4 1466testdata/Builtins.lc 394:14-394:41 Type->Type
1467testdata/Builtins.lc 390:29-390:43 Nat -> Type->Type 1467testdata/Builtins.lc 394:14-394:43 Type
1468testdata/Builtins.lc 390:29-390:45 Type->Type 1468testdata/Builtins.lc 394:28-394:41 Type
1469testdata/Builtins.lc 390:29-390:47 Type 1469testdata/Builtins.lc 394:29-394:32 Nat -> Type->Type
1470testdata/Builtins.lc 390:29-390:69 Type 1470testdata/Builtins.lc 394:29-394:34 Type->Type
1471testdata/Builtins.lc 390:44-390:45 V2 1471testdata/Builtins.lc 394:33-394:34 V1
1472testdata/Builtins.lc 390:46-390:47 Type 1472testdata/Builtins.lc 394:35-394:40 Type
1473testdata/Builtins.lc 390:51-390:65 Nat -> Type->Type 1473testdata/Builtins.lc 394:42-394:43 Type
1474testdata/Builtins.lc 390:51-390:67 Type->Type 1474testdata/Builtins.lc 395:8-395:21 Type
1475testdata/Builtins.lc 390:51-390:69 Type 1475testdata/Builtins.lc 395:8-398:26 Type
1476testdata/Builtins.lc 390:66-390:67 Nat 1476testdata/Builtins.lc 396:8-396:21 Type -> PrimitiveType->Type
1477testdata/Builtins.lc 390:68-390:69 Type 1477testdata/Builtins.lc 396:8-396:23 PrimitiveType->Type
1478testdata/Builtins.lc 391:1-391:13 {a} -> {b} -> {c:Nat} -> a->b -> Stream (Fragment c a) -> Stream (Fragment c b) 1478testdata/Builtins.lc 396:8-396:25 Type
1479testdata/Builtins.lc 391:18-391:27 {a} -> {b} -> a->b -> Stream a -> Stream b 1479testdata/Builtins.lc 396:8-398:26 Type
1480testdata/Builtins.lc 391:18-391:43 Stream (Fragment V0 V4) -> Stream (Fragment V1 V4) | V2->V2 -> Stream (Fragment V1 V3) -> Stream (Fragment V2 V3) 1480testdata/Builtins.lc 396:22-396:23 Type
1481testdata/Builtins.lc 391:28-391:43 Fragment V0 V6 -> Fragment V1 V6 1481testdata/Builtins.lc 396:24-396:25 V4
1482testdata/Builtins.lc 391:29-391:40 {a} -> {b} -> {c:Nat} -> a->b -> Fragment c a -> Fragment c b 1482testdata/Builtins.lc 397:8-397:17 Type -> PrimitiveType->Type
1483testdata/Builtins.lc 391:41-391:42 V8->V8 1483testdata/Builtins.lc 397:8-397:19 PrimitiveType->Type
1484testdata/Builtins.lc 393:6-393:11 Nat -> Type->Type | Type 1484testdata/Builtins.lc 397:8-397:21 Type
1485testdata/Builtins.lc 393:6-397:68 Type 1485testdata/Builtins.lc 397:8-398:26 Type
1486testdata/Builtins.lc 393:15-393:18 Type 1486testdata/Builtins.lc 397:18-397:19 Type
1487testdata/Builtins.lc 393:22-393:26 Type 1487testdata/Builtins.lc 397:20-397:21 PrimitiveType
1488testdata/Builtins.lc 393:22-393:34 Type 1488testdata/Builtins.lc 398:8-398:22 Nat -> Type->Type
1489testdata/Builtins.lc 393:30-393:34 Type 1489testdata/Builtins.lc 398:8-398:24 Type->Type
1490testdata/Builtins.lc 394:3-394:13 Image V6 (Color V3) | {a:Nat} -> {b:Nat} -> {c} -> {d} -> {e : Num c} -> {f : d ~ VecScalar b c} -> d -> Image a (Color d) 1490testdata/Builtins.lc 398:8-398:26 Type
1491testdata/Builtins.lc 394:3-395:57 Type 1491testdata/Builtins.lc 398:23-398:24 V1
1492testdata/Builtins.lc 394:47-395:57 Type 1492testdata/Builtins.lc 398:25-398:26 Type
1493testdata/Builtins.lc 394:48-394:51 Type->Type 1493testdata/Builtins.lc 400:1-400:20 {a} -> {b:PrimitiveType} -> RasterContext (JoinTupleType (VecS Float 4) (InterpolatedType a)) b -> a -> Stream (Primitive (JoinTupleType (VecS Float 4) (InterpolatedType a)) b) -> Stream (Vector 1 (Maybe (SimpleFragment (InterpolatedType a))))
1494testdata/Builtins.lc 394:48-394:53 Type 1494testdata/Builtins.lc 400:30-400:45 {a} -> {b} -> (a -> Stream b) -> Stream a -> Stream b
1495testdata/Builtins.lc 394:52-394:53 V3 1495testdata/Builtins.lc 400:30-400:64 Stream (Primitive (JoinTupleType (VecS Float 4) (InterpolatedType V2)) V0) -> Stream (Vector 1 (Maybe (SimpleFragment (InterpolatedType V3))))
1496testdata/Builtins.lc 394:55-394:60 V2 1496testdata/Builtins.lc 400:46-400:64 Primitive (JoinTupleType (VecS Float 4) (InterpolatedType V2)) V0 -> Stream (Vector 1 (Maybe (SimpleFragment (InterpolatedType V3))))
1497testdata/Builtins.lc 394:55-394:62 Type->Type 1497testdata/Builtins.lc 400:47-400:56 {a} -> {b} -> {c} -> {d:PrimitiveType} -> {e : a ~ InterpolatedType b} -> {f : c ~ JoinTupleType (VecS Float 4) a} -> b -> RasterContext c d -> Primitive c d -> Stream (Vector 1 (Maybe (SimpleFragment a)))
1498testdata/Builtins.lc 394:55-394:76 Type 1498testdata/Builtins.lc 400:47-400:59 RasterContext (JoinTupleType (VecS Float 4) (InterpolatedType V4)) V0 -> Primitive (JoinTupleType (VecS Float 4) (InterpolatedType V5)) V1 -> Stream (Vector 1 (Maybe (SimpleFragment (InterpolatedType V6))))
1499testdata/Builtins.lc 394:55-395:57 Type 1499testdata/Builtins.lc 400:57-400:59 V5
1500testdata/Builtins.lc 394:61-394:62 Type -> Type->Type 1500testdata/Builtins.lc 400:60-400:63 V4
1501testdata/Builtins.lc 394:63-394:72 Nat -> Type->Type 1501testdata/Builtins.lc 403:6-403:11 Nat -> Type->Type | Type
1502testdata/Builtins.lc 394:63-394:74 Type->Type 1502testdata/Builtins.lc 403:6-407:68 Type
1503testdata/Builtins.lc 394:63-394:76 Type 1503testdata/Builtins.lc 403:15-403:18 Type
1504testdata/Builtins.lc 394:73-394:74 V4 1504testdata/Builtins.lc 403:22-403:26 Type
1505testdata/Builtins.lc 394:75-394:76 Type 1505testdata/Builtins.lc 403:22-403:34 Type
1506testdata/Builtins.lc 395:26-395:31 Type 1506testdata/Builtins.lc 403:30-403:34 Type
1507testdata/Builtins.lc 395:26-395:57 Type 1507testdata/Builtins.lc 404:3-404:13 Image V6 (Color V3) | {a:Nat} -> {b:Nat} -> {c} -> {d} -> {e : Num c} -> {f : d ~ VecScalar b c} -> d -> Image a (Color d)
1508testdata/Builtins.lc 395:36-395:41 Nat -> Type->Type 1508testdata/Builtins.lc 404:3-405:57 Type
1509testdata/Builtins.lc 395:36-395:43 Type->Type 1509testdata/Builtins.lc 404:47-405:57 Type
1510testdata/Builtins.lc 395:36-395:57 Type 1510testdata/Builtins.lc 404:48-404:51 Type->Type
1511testdata/Builtins.lc 395:42-395:43 Nat | V7 1511testdata/Builtins.lc 404:48-404:53 Type
1512testdata/Builtins.lc 395:42-395:57 Image V6 (Color V3) -> Type 1512testdata/Builtins.lc 404:52-404:53 V3
1513testdata/Builtins.lc 395:44-395:57 Type 1513testdata/Builtins.lc 404:55-404:60 V2
1514testdata/Builtins.lc 395:45-395:50 Type->Type 1514testdata/Builtins.lc 404:55-404:62 Type->Type
1515testdata/Builtins.lc 395:51-395:56 Type 1515testdata/Builtins.lc 404:55-404:76 Type
1516testdata/Builtins.lc 396:3-396:13 Image V1 (Depth Float) | {a:Nat} -> Float -> Image a (Depth Float) 1516testdata/Builtins.lc 404:55-405:57 Type
1517testdata/Builtins.lc 396:3-396:68 Type 1517testdata/Builtins.lc 404:61-404:62 Type -> Type->Type
1518testdata/Builtins.lc 396:37-396:42 Type 1518testdata/Builtins.lc 404:63-404:72 Nat -> Type->Type
1519testdata/Builtins.lc 396:37-396:68 Type 1519testdata/Builtins.lc 404:63-404:74 Type->Type
1520testdata/Builtins.lc 396:47-396:52 Nat -> Type->Type 1520testdata/Builtins.lc 404:63-404:76 Type
1521testdata/Builtins.lc 396:47-396:54 Type->Type 1521testdata/Builtins.lc 404:73-404:74 V4
1522testdata/Builtins.lc 396:47-396:68 Type 1522testdata/Builtins.lc 404:75-404:76 Type
1523testdata/Builtins.lc 396:53-396:54 Nat | V2 1523testdata/Builtins.lc 405:26-405:31 Type
1524testdata/Builtins.lc 396:53-396:68 Image V1 (Depth Float) -> Type 1524testdata/Builtins.lc 405:26-405:57 Type
1525testdata/Builtins.lc 396:55-396:68 Type 1525testdata/Builtins.lc 405:36-405:41 Nat -> Type->Type
1526testdata/Builtins.lc 396:56-396:61 Type->Type 1526testdata/Builtins.lc 405:36-405:43 Type->Type
1527testdata/Builtins.lc 396:62-396:67 Type 1527testdata/Builtins.lc 405:36-405:57 Type
1528testdata/Builtins.lc 397:3-397:15 Image V1 (Stencil Int) | {a:Nat} -> Int -> Image a (Stencil Int) 1528testdata/Builtins.lc 405:42-405:43 Nat | V7
1529testdata/Builtins.lc 397:3-397:68 Type 1529testdata/Builtins.lc 405:42-405:57 Image V6 (Color V3) -> Type
1530testdata/Builtins.lc 397:37-397:40 Type 1530testdata/Builtins.lc 405:44-405:57 Type
1531testdata/Builtins.lc 397:37-397:68 Type 1531testdata/Builtins.lc 405:45-405:50 Type->Type
1532testdata/Builtins.lc 397:47-397:52 Nat -> Type->Type 1532testdata/Builtins.lc 405:51-405:56 Type
1533testdata/Builtins.lc 397:47-397:54 Type->Type 1533testdata/Builtins.lc 406:3-406:13 Image V1 (Depth Float) | {a:Nat} -> Float -> Image a (Depth Float)
1534testdata/Builtins.lc 397:47-397:68 Type 1534testdata/Builtins.lc 406:3-406:68 Type
1535testdata/Builtins.lc 397:53-397:54 Nat | V2 1535testdata/Builtins.lc 406:37-406:42 Type
1536testdata/Builtins.lc 397:53-397:68 Image V1 (Stencil Int) -> Type 1536testdata/Builtins.lc 406:37-406:68 Type
1537testdata/Builtins.lc 397:55-397:68 Type 1537testdata/Builtins.lc 406:47-406:52 Nat -> Type->Type
1538testdata/Builtins.lc 397:56-397:63 Type->Type 1538testdata/Builtins.lc 406:47-406:54 Type->Type
1539testdata/Builtins.lc 397:64-397:67 Type 1539testdata/Builtins.lc 406:47-406:68 Type
1540testdata/Builtins.lc 400:6-400:20 Nat -> Type->Type | Type 1540testdata/Builtins.lc 406:53-406:54 Nat | V2
1541testdata/Builtins.lc 400:27-400:30 Type 1541testdata/Builtins.lc 406:53-406:68 Image V1 (Depth Float) -> Type
1542testdata/Builtins.lc 403:5-403:18 Type->Type 1542testdata/Builtins.lc 406:55-406:68 Type
1543testdata/Builtins.lc 403:26-403:31 Type 1543testdata/Builtins.lc 406:56-406:61 Type->Type
1544testdata/Builtins.lc 403:26-403:55 Type->Type 1544testdata/Builtins.lc 406:62-406:67 Type
1545testdata/Builtins.lc 403:26-405:91 Type | Type->Type 1545testdata/Builtins.lc 407:3-407:15 Image V1 (Stencil Int) | {a:Nat} -> Int -> Image a (Stencil Int)
1546testdata/Builtins.lc 403:35-403:49 Nat -> Type->Type 1546testdata/Builtins.lc 407:3-407:68 Type
1547testdata/Builtins.lc 403:35-403:52 Type->Type 1547testdata/Builtins.lc 407:37-407:40 Type
1548testdata/Builtins.lc 403:35-403:55 Nat -> Type->Type | Type | Type->Type 1548testdata/Builtins.lc 407:37-407:68 Type
1549testdata/Builtins.lc 403:50-403:52 Nat 1549testdata/Builtins.lc 407:47-407:52 Nat -> Type->Type
1550testdata/Builtins.lc 403:53-403:55 Type 1550testdata/Builtins.lc 407:47-407:54 Type->Type
1551testdata/Builtins.lc 404:20-404:44 Type 1551testdata/Builtins.lc 407:47-407:68 Type
1552testdata/Builtins.lc 404:20-404:74 Type->Type 1552testdata/Builtins.lc 407:53-407:54 Nat | V2
1553testdata/Builtins.lc 404:20-405:91 Type 1553testdata/Builtins.lc 407:53-407:68 Image V1 (Stencil Int) -> Type
1554testdata/Builtins.lc 404:48-404:62 Nat -> Type->Type 1554testdata/Builtins.lc 407:55-407:68 Type
1555testdata/Builtins.lc 404:48-404:65 Type->Type 1555testdata/Builtins.lc 407:56-407:63 Type->Type
1556testdata/Builtins.lc 404:48-404:74 Nat -> Type->Type | Type | Type -> Type->Type | Type->Type 1556testdata/Builtins.lc 407:64-407:67 Type
1557testdata/Builtins.lc 404:63-404:65 Nat 1557testdata/Builtins.lc 410:6-410:20 Nat -> Type->Type | Type
1558testdata/Builtins.lc 404:66-404:74 Type 1558testdata/Builtins.lc 410:27-410:30 Type
1559testdata/Builtins.lc 404:67-404:69 Type 1559testdata/Builtins.lc 413:5-413:18 Type->Type
1560testdata/Builtins.lc 404:71-404:73 Type 1560testdata/Builtins.lc 413:26-413:31 Type
1561testdata/Builtins.lc 405:20-405:57 Type 1561testdata/Builtins.lc 413:26-413:55 Type->Type
1562testdata/Builtins.lc 405:20-405:91 Type->Type 1562testdata/Builtins.lc 413:26-415:91 Type | Type->Type
1563testdata/Builtins.lc 405:61-405:75 Nat -> Type->Type 1563testdata/Builtins.lc 413:35-413:49 Nat -> Type->Type
1564testdata/Builtins.lc 405:61-405:78 Type->Type 1564testdata/Builtins.lc 413:35-413:52 Type->Type
1565testdata/Builtins.lc 405:61-405:91 Nat -> Type->Type | Type | Type -> Type -> Type->Type | Type -> Type->Type | Type->Type 1565testdata/Builtins.lc 413:35-413:55 Nat -> Type->Type | Type | Type->Type
1566testdata/Builtins.lc 405:76-405:78 Nat 1566testdata/Builtins.lc 413:50-413:52 Nat
1567testdata/Builtins.lc 405:79-405:91 Type 1567testdata/Builtins.lc 413:53-413:55 Type
1568testdata/Builtins.lc 405:80-405:82 Type 1568testdata/Builtins.lc 414:20-414:44 Type
1569testdata/Builtins.lc 405:80-405:86 Type->Type 1569testdata/Builtins.lc 414:20-414:74 Type->Type
1570testdata/Builtins.lc 405:84-405:86 Type 1570testdata/Builtins.lc 414:20-415:91 Type
1571testdata/Builtins.lc 405:88-405:90 Type 1571testdata/Builtins.lc 414:48-414:62 Nat -> Type->Type
1572testdata/Builtins.lc 408:5-408:20 Type->Type 1572testdata/Builtins.lc 414:48-414:65 Type->Type
1573testdata/Builtins.lc 408:28-408:33 Type 1573testdata/Builtins.lc 414:48-414:74 Nat -> Type->Type | Type | Type -> Type->Type | Type->Type
1574testdata/Builtins.lc 408:28-408:41 Type->Type 1574testdata/Builtins.lc 414:63-414:65 Nat
1575testdata/Builtins.lc 408:28-410:99 Type | Type->Type 1575testdata/Builtins.lc 414:66-414:74 Type
1576testdata/Builtins.lc 408:37-408:41 Nat -> Type->Type | Type | Type->Type 1576testdata/Builtins.lc 414:67-414:69 Type
1577testdata/Builtins.lc 409:22-409:46 Type 1577testdata/Builtins.lc 414:71-414:73 Type
1578testdata/Builtins.lc 409:22-409:64 Type->Type 1578testdata/Builtins.lc 415:20-415:57 Type
1579testdata/Builtins.lc 409:22-410:99 Type 1579testdata/Builtins.lc 415:20-415:91 Type->Type
1580testdata/Builtins.lc 409:50-409:54 a:Type -> a -> a->Type 1580testdata/Builtins.lc 415:61-415:75 Nat -> Type->Type
1581testdata/Builtins.lc 409:50-409:58 Nat -> Nat->Type 1581testdata/Builtins.lc 415:61-415:78 Type->Type
1582testdata/Builtins.lc 409:50-409:61 Nat->Type 1582testdata/Builtins.lc 415:61-415:91 Nat -> Type->Type | Type | Type -> Type -> Type->Type | Type -> Type->Type | Type->Type
1583testdata/Builtins.lc 409:50-409:64 Nat -> Type->Type | Type | Type -> Type->Type | Type->Type 1583testdata/Builtins.lc 415:76-415:78 Nat
1584testdata/Builtins.lc 409:55-409:58 Type 1584testdata/Builtins.lc 415:79-415:91 Type
1585testdata/Builtins.lc 409:59-409:61 Nat 1585testdata/Builtins.lc 415:80-415:82 Type
1586testdata/Builtins.lc 409:62-409:64 Nat 1586testdata/Builtins.lc 415:80-415:86 Type->Type
1587testdata/Builtins.lc 410:22-410:59 Type 1587testdata/Builtins.lc 415:84-415:86 Type
1588testdata/Builtins.lc 410:22-410:99 Type->Type 1588testdata/Builtins.lc 415:88-415:90 Type
1589testdata/Builtins.lc 410:63-410:65 Type -> Type->Type 1589testdata/Builtins.lc 418:5-418:20 Type->Type
1590testdata/Builtins.lc 410:63-410:82 Type->Type 1590testdata/Builtins.lc 418:28-418:33 Type
1591testdata/Builtins.lc 410:63-410:99 Nat -> Type->Type | Type | Type -> Type -> Type->Type | Type -> Type->Type | Type->Type 1591testdata/Builtins.lc 418:28-418:41 Type->Type
1592testdata/Builtins.lc 410:66-410:82 Type 1592testdata/Builtins.lc 418:28-420:99 Type | Type->Type
1593testdata/Builtins.lc 410:67-410:71 a:Type -> a -> a->Type 1593testdata/Builtins.lc 418:37-418:41 Nat -> Type->Type | Type | Type->Type
1594testdata/Builtins.lc 410:67-410:75 Nat -> Nat->Type 1594testdata/Builtins.lc 419:22-419:46 Type
1595testdata/Builtins.lc 410:67-410:78 Nat->Type 1595testdata/Builtins.lc 419:22-419:64 Type->Type
1596testdata/Builtins.lc 410:72-410:75 Type 1596testdata/Builtins.lc 419:22-420:99 Type
1597testdata/Builtins.lc 410:76-410:78 Nat 1597testdata/Builtins.lc 419:50-419:54 a:Type -> a -> a->Type
1598testdata/Builtins.lc 410:79-410:81 Nat 1598testdata/Builtins.lc 419:50-419:58 Nat -> Nat->Type
1599testdata/Builtins.lc 410:83-410:99 Type 1599testdata/Builtins.lc 419:50-419:61 Nat->Type
1600testdata/Builtins.lc 410:84-410:88 a:Type -> a -> a->Type 1600testdata/Builtins.lc 419:50-419:64 Nat -> Type->Type | Type | Type -> Type->Type | Type->Type
1601testdata/Builtins.lc 410:84-410:92 Nat -> Nat->Type 1601testdata/Builtins.lc 419:55-419:58 Type
1602testdata/Builtins.lc 410:84-410:95 Nat->Type 1602testdata/Builtins.lc 419:59-419:61 Nat
1603testdata/Builtins.lc 410:89-410:92 Type 1603testdata/Builtins.lc 419:62-419:64 Nat
1604testdata/Builtins.lc 410:93-410:95 Nat 1604testdata/Builtins.lc 420:22-420:59 Type
1605testdata/Builtins.lc 410:96-410:98 Nat 1605testdata/Builtins.lc 420:22-420:99 Type->Type
1606testdata/Builtins.lc 412:7-412:20 Type->Type 1606testdata/Builtins.lc 420:63-420:65 Type -> Type->Type
1607testdata/Builtins.lc 412:7-412:65 Type 1607testdata/Builtins.lc 420:63-420:82 Type->Type
1608testdata/Builtins.lc 412:29-412:42 {a} -> {b} -> {c : DefaultFragOp b} -> FragmentOperation b 1608testdata/Builtins.lc 420:63-420:99 Nat -> Type->Type | Type | Type -> Type -> Type->Type | Type -> Type->Type | Type->Type
1609testdata/Builtins.lc 412:46-412:63 Type->Type 1609testdata/Builtins.lc 420:66-420:82 Type
1610testdata/Builtins.lc 412:46-412:65 Type 1610testdata/Builtins.lc 420:67-420:71 a:Type -> a -> a->Type
1611testdata/Builtins.lc 412:64-412:65 Type 1611testdata/Builtins.lc 420:67-420:75 Nat -> Nat->Type
1612testdata/Builtins.lc 413:37-413:42 Type 1612testdata/Builtins.lc 420:67-420:78 Nat->Type
1613testdata/Builtins.lc 413:37-413:112 ({a : DefaultFragOp V1} -> FragmentOperation V2) -> {c : DefaultFragOp V2} -> FragmentOperation V3 1613testdata/Builtins.lc 420:72-420:75 Type
1614testdata/Builtins.lc 413:37-414:36 Type | Type->Type 1614testdata/Builtins.lc 420:76-420:78 Nat
1615testdata/Builtins.lc 413:37-414:77 {a : DefaultFragOp V1} -> FragmentOperation V2 | {a} -> {b : DefaultFragOp a} -> FragmentOperation a 1615testdata/Builtins.lc 420:79-420:81 Nat
1616testdata/Builtins.lc 413:69-413:76 {a} -> {b:Nat} -> {c} -> {d} -> {e : a ~ VecScalar b Bool} -> {f : c ~ VecScalar b d} -> {g : Num d} -> Blending d -> a -> FragmentOperation (Color c) 1616testdata/Builtins.lc 420:83-420:99 Type
1617testdata/Builtins.lc 413:69-413:87 VecScalar V2 Bool -> FragmentOperation (Color (VecScalar V3 V2)) 1617testdata/Builtins.lc 420:84-420:88 a:Type -> a -> a->Type
1618testdata/Builtins.lc 413:69-413:112 FragmentOperation (Color (VecS V1 4)) | a:Nat -> {b : DefaultFragOp (Color (VecS Float ('Succ ('Succ ('Succ ('Succ a))))))} -> FragmentOperation (Color (VecS Float ('Succ ('Succ ('Succ ('Succ a)))))) | a:Nat -> {b : DefaultFragOp (Color (VecS Float ('Succ ('Succ ('Succ a)))))} -> FragmentOperation (Color (VecS Float ('Succ ('Succ ('Succ a))))) | a:Nat -> {b : DefaultFragOp (Color (VecS Float ('Succ ('Succ a))))} -> FragmentOperation (Color (VecS Float ('Succ ('Succ a)))) | a:Nat -> {b : DefaultFragOp (Color (VecS Float ('Succ a)))} -> FragmentOperation (Color (VecS Float ('Succ a))) | a:Nat -> {b : DefaultFragOp (Color (VecS V1 a))} -> FragmentOperation (Color (VecS V2 a)) | a:Type -> b:Nat -> {c : DefaultFragOp (Color (VecS a b))} -> FragmentOperation (Color (VecS a b)) | a:Type -> {b : DefaultFragOp (Color a)} -> FragmentOperation (Color a) 1618testdata/Builtins.lc 420:84-420:92 Nat -> Nat->Type
1619testdata/Builtins.lc 413:77-413:87 {a} -> Blending a 1619testdata/Builtins.lc 420:84-420:95 Nat->Type
1620testdata/Builtins.lc 413:88-413:112 VecS Bool 4 1620testdata/Builtins.lc 420:89-420:92 Type
1621testdata/Builtins.lc 413:89-413:91 {a} -> a -> a -> a -> a -> VecS a 4 1621testdata/Builtins.lc 420:93-420:95 Nat
1622testdata/Builtins.lc 413:89-413:96 Bool -> Bool -> Bool -> VecS Bool 4 1622testdata/Builtins.lc 420:96-420:98 Nat
1623testdata/Builtins.lc 413:89-413:101 Bool -> Bool -> VecS Bool 4 1623testdata/Builtins.lc 422:7-422:20 Type->Type
1624testdata/Builtins.lc 413:89-413:106 Bool -> VecS Bool 4 1624testdata/Builtins.lc 422:7-422:65 Type
1625testdata/Builtins.lc 413:92-413:96 Bool 1625testdata/Builtins.lc 422:29-422:42 {a} -> {b} -> {c : DefaultFragOp b} -> FragmentOperation b
1626testdata/Builtins.lc 413:97-413:101 Bool 1626testdata/Builtins.lc 422:46-422:63 Type->Type
1627testdata/Builtins.lc 413:102-413:106 Bool 1627testdata/Builtins.lc 422:46-422:65 Type
1628testdata/Builtins.lc 413:107-413:111 Bool 1628testdata/Builtins.lc 422:64-422:65 Type
1629testdata/Builtins.lc 414:31-414:36 Type 1629testdata/Builtins.lc 423:37-423:42 Type
1630testdata/Builtins.lc 414:31-414:77 ({a : DefaultFragOp V1} -> FragmentOperation V2) -> {c : DefaultFragOp V2} -> FragmentOperation V3 1630testdata/Builtins.lc 423:37-423:112 ({a : DefaultFragOp V1} -> FragmentOperation V2) -> {c : DefaultFragOp V2} -> FragmentOperation V3
1631testdata/Builtins.lc 414:60-414:67 ComparisonFunction -> Bool -> FragmentOperation (Depth Float) 1631testdata/Builtins.lc 423:37-424:36 Type | Type->Type
1632testdata/Builtins.lc 414:60-414:72 Bool -> FragmentOperation (Depth Float) 1632testdata/Builtins.lc 423:37-424:77 {a : DefaultFragOp V1} -> FragmentOperation V2 | {a} -> {b : DefaultFragOp a} -> FragmentOperation a
1633testdata/Builtins.lc 414:60-414:77 FragmentOperation (Depth Float) | a:Type -> {b : DefaultFragOp (Depth a)} -> FragmentOperation (Depth a) 1633testdata/Builtins.lc 423:69-423:76 {a} -> {b:Nat} -> {c} -> {d} -> {e : a ~ VecScalar b Bool} -> {f : c ~ VecScalar b d} -> {g : Num d} -> Blending d -> a -> FragmentOperation (Color c)
1634testdata/Builtins.lc 414:68-414:72 ComparisonFunction 1634testdata/Builtins.lc 423:69-423:87 VecScalar V2 Bool -> FragmentOperation (Color (VecScalar V3 V2))
1635testdata/Builtins.lc 414:73-414:77 Bool 1635testdata/Builtins.lc 423:69-423:112 FragmentOperation (Color (VecS V1 4)) | a:Nat -> {b : DefaultFragOp (Color (VecS Float ('Succ ('Succ ('Succ ('Succ a))))))} -> FragmentOperation (Color (VecS Float ('Succ ('Succ ('Succ ('Succ a)))))) | a:Nat -> {b : DefaultFragOp (Color (VecS Float ('Succ ('Succ ('Succ a)))))} -> FragmentOperation (Color (VecS Float ('Succ ('Succ ('Succ a))))) | a:Nat -> {b : DefaultFragOp (Color (VecS Float ('Succ ('Succ a))))} -> FragmentOperation (Color (VecS Float ('Succ ('Succ a)))) | a:Nat -> {b : DefaultFragOp (Color (VecS Float ('Succ a)))} -> FragmentOperation (Color (VecS Float ('Succ a))) | a:Nat -> {b : DefaultFragOp (Color (VecS V1 a))} -> FragmentOperation (Color (VecS V2 a)) | a:Type -> b:Nat -> {c : DefaultFragOp (Color (VecS a b))} -> FragmentOperation (Color (VecS a b)) | a:Type -> {b : DefaultFragOp (Color a)} -> FragmentOperation (Color a)
1636testdata/Builtins.lc 421:6-421:17 Nat -> Type->Type | Type 1636testdata/Builtins.lc 423:77-423:87 {a} -> Blending a
1637testdata/Builtins.lc 421:6-423:14 Type 1637testdata/Builtins.lc 423:88-423:112 VecS Bool 4
1638testdata/Builtins.lc 421:24-421:27 Type 1638testdata/Builtins.lc 423:89-423:91 {a} -> a -> a -> a -> a -> VecS a 4
1639testdata/Builtins.lc 422:3-422:13 FrameBuffer V5 V4 | Type | {a:Nat} -> {b} -> FragOps' b -> Stream (Fragment a (RemSemantics b)) -> FrameBuffer a b -> FrameBuffer a b 1639testdata/Builtins.lc 423:89-423:96 Bool -> Bool -> Bool -> VecS Bool 4
1640testdata/Builtins.lc 422:19-422:27 Type->Type 1640testdata/Builtins.lc 423:89-423:101 Bool -> Bool -> VecS Bool 4
1641testdata/Builtins.lc 422:19-422:29 Type 1641testdata/Builtins.lc 423:89-423:106 Bool -> VecS Bool 4
1642testdata/Builtins.lc 422:19-422:106 Type 1642testdata/Builtins.lc 423:92-423:96 Bool
1643testdata/Builtins.lc 422:28-422:29 Type 1643testdata/Builtins.lc 423:97-423:101 Bool
1644testdata/Builtins.lc 422:33-422:68 Type 1644testdata/Builtins.lc 423:102-423:106 Bool
1645testdata/Builtins.lc 422:33-422:106 Type 1645testdata/Builtins.lc 423:107-423:111 Bool
1646testdata/Builtins.lc 422:34-422:48 Nat -> Type->Type 1646testdata/Builtins.lc 424:31-424:36 Type
1647testdata/Builtins.lc 422:34-422:50 Type->Type 1647testdata/Builtins.lc 424:31-424:77 ({a : DefaultFragOp V1} -> FragmentOperation V2) -> {c : DefaultFragOp V2} -> FragmentOperation V3
1648testdata/Builtins.lc 422:49-422:50 Nat 1648testdata/Builtins.lc 424:60-424:67 ComparisonFunction -> Bool -> FragmentOperation (Depth Float)
1649testdata/Builtins.lc 422:51-422:67 Type 1649testdata/Builtins.lc 424:60-424:72 Bool -> FragmentOperation (Depth Float)
1650testdata/Builtins.lc 422:52-422:64 Type->Type 1650testdata/Builtins.lc 424:60-424:77 FragmentOperation (Depth Float) | a:Type -> {b : DefaultFragOp (Depth a)} -> FragmentOperation (Depth a)
1651testdata/Builtins.lc 422:65-422:66 Type 1651testdata/Builtins.lc 424:68-424:72 ComparisonFunction
1652testdata/Builtins.lc 422:72-422:83 Nat -> Type->Type 1652testdata/Builtins.lc 424:73-424:77 Bool
1653testdata/Builtins.lc 422:72-422:85 Type->Type 1653testdata/Builtins.lc 431:6-431:17 Nat -> Type->Type | Type
1654testdata/Builtins.lc 422:72-422:87 Type 1654testdata/Builtins.lc 431:6-433:14 Type
1655testdata/Builtins.lc 422:72-422:106 Type 1655testdata/Builtins.lc 431:24-431:27 Type
1656testdata/Builtins.lc 422:84-422:85 Nat 1656testdata/Builtins.lc 432:3-432:13 FrameBuffer V5 V4 | Type | {a:Nat} -> {b} -> FragOps' b -> Stream (Vector a (Maybe (SimpleFragment (RemSemantics b)))) -> FrameBuffer a b -> FrameBuffer a b
1657testdata/Builtins.lc 422:86-422:87 Type 1657testdata/Builtins.lc 432:19-432:27 Type->Type
1658testdata/Builtins.lc 422:91-422:102 Nat -> Type->Type 1658testdata/Builtins.lc 432:19-432:29 Type
1659testdata/Builtins.lc 422:91-422:104 Type->Type 1659testdata/Builtins.lc 432:19-432:106 Type
1660testdata/Builtins.lc 422:91-422:106 Type 1660testdata/Builtins.lc 432:28-432:29 Type
1661testdata/Builtins.lc 422:103-422:104 Nat 1661testdata/Builtins.lc 432:33-432:68 Type
1662testdata/Builtins.lc 422:105-422:106 Type 1662testdata/Builtins.lc 432:33-432:106 Type
1663testdata/Builtins.lc 423:3-423:14 FrameBuffer V7 V6 | Type | {a:Nat} -> {b} -> {c} -> {d : SameLayerCounts c} -> {e : PreFrameBuffer a b ~ TFFrameBuffer c} -> c -> FrameBuffer a b 1663testdata/Builtins.lc 432:34-432:48 Nat -> Type->Type
1664testdata/Builtins.lc 423:19-423:120 Type 1664testdata/Builtins.lc 432:34-432:50 Type->Type
1665testdata/Builtins.lc 423:20-423:36 Type->Type 1665testdata/Builtins.lc 432:49-432:50 Nat
1666testdata/Builtins.lc 423:20-423:38 Type 1666testdata/Builtins.lc 432:51-432:67 Type
1667testdata/Builtins.lc 423:37-423:38 Type 1667testdata/Builtins.lc 432:52-432:64 Type->Type
1668testdata/Builtins.lc 423:40-423:55 Type->Type 1668testdata/Builtins.lc 432:65-432:66 Type
1669testdata/Builtins.lc 423:40-423:57 Type 1669testdata/Builtins.lc 432:72-432:83 Nat -> Type->Type
1670testdata/Builtins.lc 423:40-423:120 Type 1670testdata/Builtins.lc 432:72-432:85 Type->Type
1671testdata/Builtins.lc 423:56-423:57 V2 1671testdata/Builtins.lc 432:72-432:87 Type
1672testdata/Builtins.lc 423:59-423:73 Nat -> Type->Type 1672testdata/Builtins.lc 432:72-432:106 Type
1673testdata/Builtins.lc 423:59-423:75 Type->Type 1673testdata/Builtins.lc 432:84-432:85 Nat
1674testdata/Builtins.lc 423:59-423:77 Type 1674testdata/Builtins.lc 432:86-432:87 Type
1675testdata/Builtins.lc 423:59-423:79 Type->Type 1675testdata/Builtins.lc 432:91-432:102 Nat -> Type->Type
1676testdata/Builtins.lc 423:59-423:95 Type 1676testdata/Builtins.lc 432:91-432:104 Type->Type
1677testdata/Builtins.lc 423:59-423:120 Type 1677testdata/Builtins.lc 432:91-432:106 Type
1678testdata/Builtins.lc 423:74-423:75 Nat 1678testdata/Builtins.lc 432:103-432:104 Nat
1679testdata/Builtins.lc 423:76-423:77 Type 1679testdata/Builtins.lc 432:105-432:106 Type
1680testdata/Builtins.lc 423:78-423:79 Type -> Type->Type 1680testdata/Builtins.lc 433:3-433:14 FrameBuffer V7 V6 | Type | {a:Nat} -> {b} -> {c} -> {d : SameLayerCounts c} -> {e : PreFrameBuffer a b ~ TFFrameBuffer c} -> c -> FrameBuffer a b
1681testdata/Builtins.lc 423:80-423:93 Type->Type 1681testdata/Builtins.lc 433:19-433:120 Type
1682testdata/Builtins.lc 423:80-423:95 Type 1682testdata/Builtins.lc 433:20-433:36 Type->Type
1683testdata/Builtins.lc 423:94-423:95 Type 1683testdata/Builtins.lc 433:20-433:38 Type
1684testdata/Builtins.lc 423:100-423:101 Type 1684testdata/Builtins.lc 433:37-433:38 Type
1685testdata/Builtins.lc 423:100-423:120 Type 1685testdata/Builtins.lc 433:40-433:55 Type->Type
1686testdata/Builtins.lc 423:105-423:116 Nat -> Type->Type 1686testdata/Builtins.lc 433:40-433:57 Type
1687testdata/Builtins.lc 423:105-423:118 Type->Type 1687testdata/Builtins.lc 433:40-433:120 Type
1688testdata/Builtins.lc 423:105-423:120 Type 1688testdata/Builtins.lc 433:56-433:57 V2
1689testdata/Builtins.lc 423:117-423:118 Nat 1689testdata/Builtins.lc 433:59-433:73 Nat -> Type->Type
1690testdata/Builtins.lc 423:119-423:120 Type 1690testdata/Builtins.lc 433:59-433:75 Type->Type
1691testdata/Builtins.lc 425:1-425:11 {a:Nat} -> {b} -> {c} -> FragOps' b -> (c -> RemSemantics b) -> Stream (Fragment a c) -> FrameBuffer a b -> FrameBuffer a b 1691testdata/Builtins.lc 433:59-433:77 Type
1692testdata/Builtins.lc 425:34-425:44 {a:Nat} -> {b} -> FragOps' b -> Stream (Fragment a (RemSemantics b)) -> FrameBuffer a b -> FrameBuffer a b 1692testdata/Builtins.lc 433:59-433:79 Type->Type
1693testdata/Builtins.lc 425:34-425:48 Stream (Fragment V1 (RemSemantics V0)) -> FrameBuffer V2 V1 -> FrameBuffer V3 V2 1693testdata/Builtins.lc 433:59-433:95 Type
1694testdata/Builtins.lc 425:34-425:76 FrameBuffer V2 V1 -> FrameBuffer V3 V2 1694testdata/Builtins.lc 433:59-433:120 Type
1695testdata/Builtins.lc 425:34-425:79 FrameBuffer V2 V1 1695testdata/Builtins.lc 433:74-433:75 Nat
1696testdata/Builtins.lc 425:45-425:48 V9 1696testdata/Builtins.lc 433:76-433:77 Type
1697testdata/Builtins.lc 425:49-425:76 Stream (Fragment V2 (RemSemantics V1)) 1697testdata/Builtins.lc 433:78-433:79 Type -> Type->Type
1698testdata/Builtins.lc 425:50-425:62 {a} -> {b} -> {c:Nat} -> a->b -> Stream (Fragment c a) -> Stream (Fragment c b) 1698testdata/Builtins.lc 433:80-433:93 Type->Type
1699testdata/Builtins.lc 425:50-425:70 Stream (Fragment V0 V2) -> Stream (Fragment V1 V2) 1699testdata/Builtins.lc 433:80-433:95 Type
1700testdata/Builtins.lc 425:63-425:70 V10 1700testdata/Builtins.lc 433:94-433:95 Type
1701testdata/Builtins.lc 425:71-425:75 V6 1701testdata/Builtins.lc 433:100-433:101 Type
1702testdata/Builtins.lc 425:77-425:79 V4 1702testdata/Builtins.lc 433:100-433:120 Type
1703testdata/Builtins.lc 427:1-427:20 {a} -> a->a 1703testdata/Builtins.lc 433:105-433:116 Nat -> Type->Type
1704testdata/Builtins.lc 427:25-427:26 V1 1704testdata/Builtins.lc 433:105-433:118 Type->Type
1705testdata/Builtins.lc 430:1-430:9 {a} -> FrameBuffer 1 a -> Image 1 a 1705testdata/Builtins.lc 433:105-433:120 Type
1706testdata/Builtins.lc 430:24-430:35 Nat -> Type->Type 1706testdata/Builtins.lc 433:117-433:118 Nat
1707testdata/Builtins.lc 430:24-430:37 Type->Type 1707testdata/Builtins.lc 433:119-433:120 Type
1708testdata/Builtins.lc 430:24-430:39 Type 1708testdata/Builtins.lc 435:1-435:11 {a:Nat} -> {b} -> {c} -> FragOps' b -> (c -> RemSemantics b) -> Stream (Vector a (Maybe (SimpleFragment c))) -> FrameBuffer a b -> FrameBuffer a b
1709testdata/Builtins.lc 430:24-430:52 Type 1709testdata/Builtins.lc 435:34-435:44 {a:Nat} -> {b} -> FragOps' b -> Stream (Vector a (Maybe (SimpleFragment (RemSemantics b)))) -> FrameBuffer a b -> FrameBuffer a b
1710testdata/Builtins.lc 430:36-430:37 V1 1710testdata/Builtins.lc 435:34-435:48 Stream (Vector V1 (Maybe (SimpleFragment (RemSemantics V0)))) -> FrameBuffer V2 V1 -> FrameBuffer V3 V2
1711testdata/Builtins.lc 430:38-430:39 V1 1711testdata/Builtins.lc 435:34-435:76 FrameBuffer V2 V1 -> FrameBuffer V3 V2
1712testdata/Builtins.lc 430:43-430:48 Nat -> Type->Type 1712testdata/Builtins.lc 435:34-435:79 FrameBuffer V2 V1
1713testdata/Builtins.lc 430:43-430:50 Type->Type 1713testdata/Builtins.lc 435:45-435:48 V9
1714testdata/Builtins.lc 430:43-430:52 Type 1714testdata/Builtins.lc 435:49-435:76 Stream (Vector V2 (Maybe (SimpleFragment (RemSemantics V1))))
1715testdata/Builtins.lc 430:49-430:50 V1 1715testdata/Builtins.lc 435:50-435:62 {a} -> {b} -> {c:Nat} -> a->b -> Stream (Vector c (Maybe (SimpleFragment a))) -> Stream (Vector c (Maybe (SimpleFragment b)))
1716testdata/Builtins.lc 430:51-430:52 Type 1716testdata/Builtins.lc 435:50-435:70 Stream (Vector V0 (Maybe (SimpleFragment V2))) -> Stream (Vector V1 (Maybe (SimpleFragment V2)))
1717testdata/Builtins.lc 431:1-431:14 FrameBuffer 1 (Tuple2 (Depth Float) (Color (VecS Float 4))) -> Image 1 (Color (VecS Float 4)) 1717testdata/Builtins.lc 435:63-435:70 V10
1718testdata/Builtins.lc 431:24-431:35 Nat -> Type->Type 1718testdata/Builtins.lc 435:71-435:75 V6
1719testdata/Builtins.lc 431:24-431:37 Type->Type 1719testdata/Builtins.lc 435:77-435:79 V4
1720testdata/Builtins.lc 431:24-431:72 Type 1720testdata/Builtins.lc 437:1-437:20 {a} -> a->a
1721testdata/Builtins.lc 431:36-431:37 V1 1721testdata/Builtins.lc 437:25-437:26 V1
1722testdata/Builtins.lc 431:38-431:72 Type 1722testdata/Builtins.lc 440:1-440:9 {a} -> FrameBuffer 1 a -> Image 1 a
1723testdata/Builtins.lc 431:39-431:44 Type->Type 1723testdata/Builtins.lc 440:24-440:35 Nat -> Type->Type
1724testdata/Builtins.lc 431:39-431:50 Type 1724testdata/Builtins.lc 440:24-440:37 Type->Type
1725testdata/Builtins.lc 431:45-431:50 Type 1725testdata/Builtins.lc 440:24-440:39 Type
1726testdata/Builtins.lc 431:52-431:57 Type->Type 1726testdata/Builtins.lc 440:24-440:52 Type
1727testdata/Builtins.lc 431:52-431:71 Type 1727testdata/Builtins.lc 440:36-440:37 V1
1728testdata/Builtins.lc 431:58-431:71 Type 1728testdata/Builtins.lc 440:38-440:39 V1
1729testdata/Builtins.lc 431:59-431:62 Nat -> Type->Type 1729testdata/Builtins.lc 440:43-440:48 Nat -> Type->Type
1730testdata/Builtins.lc 431:59-431:64 Type->Type 1730testdata/Builtins.lc 440:43-440:50 Type->Type
1731testdata/Builtins.lc 431:63-431:64 V1 1731testdata/Builtins.lc 440:43-440:52 Type
1732testdata/Builtins.lc 431:65-431:70 Type 1732testdata/Builtins.lc 440:49-440:50 V1
1733testdata/Builtins.lc 431:76-431:81 Nat -> Type->Type 1733testdata/Builtins.lc 440:51-440:52 Type
1734testdata/Builtins.lc 431:76-431:83 Type->Type 1734testdata/Builtins.lc 441:1-441:14 FrameBuffer 1 (Tuple2 (Depth Float) (Color (VecS Float 4))) -> Image 1 (Color (VecS Float 4))
1735testdata/Builtins.lc 431:76-431:105 Type 1735testdata/Builtins.lc 441:24-441:35 Nat -> Type->Type
1736testdata/Builtins.lc 431:82-431:83 V1 1736testdata/Builtins.lc 441:24-441:37 Type->Type
1737testdata/Builtins.lc 431:84-431:105 Type 1737testdata/Builtins.lc 441:24-441:72 Type
1738testdata/Builtins.lc 431:85-431:90 Type->Type 1738testdata/Builtins.lc 441:36-441:37 V1
1739testdata/Builtins.lc 431:91-431:104 Type 1739testdata/Builtins.lc 441:38-441:72 Type
1740testdata/Builtins.lc 431:92-431:95 Nat -> Type->Type 1740testdata/Builtins.lc 441:39-441:44 Type->Type
1741testdata/Builtins.lc 431:92-431:97 Type->Type 1741testdata/Builtins.lc 441:39-441:50 Type
1742testdata/Builtins.lc 431:96-431:97 V1 1742testdata/Builtins.lc 441:45-441:50 Type
1743testdata/Builtins.lc 431:98-431:103 Type 1743testdata/Builtins.lc 441:52-441:57 Type->Type
1744testdata/Builtins.lc 433:6-433:12 Type 1744testdata/Builtins.lc 441:52-441:71 Type
1745testdata/Builtins.lc 433:6-434:12 Type 1745testdata/Builtins.lc 441:58-441:71 Type
1746testdata/Builtins.lc 434:3-434:12 Output | Type | {a:Nat} -> {b} -> FrameBuffer a b -> Output 1746testdata/Builtins.lc 441:59-441:62 Nat -> Type->Type
1747testdata/Builtins.lc 434:26-434:37 Nat -> Type->Type 1747testdata/Builtins.lc 441:59-441:64 Type->Type
1748testdata/Builtins.lc 434:26-434:39 Type->Type 1748testdata/Builtins.lc 441:63-441:64 V1
1749testdata/Builtins.lc 434:26-434:41 Type 1749testdata/Builtins.lc 441:65-441:70 Type
1750testdata/Builtins.lc 434:26-434:51 Type 1750testdata/Builtins.lc 441:76-441:81 Nat -> Type->Type
1751testdata/Builtins.lc 434:38-434:39 V3 1751testdata/Builtins.lc 441:76-441:83 Type->Type
1752testdata/Builtins.lc 434:40-434:41 V1 1752testdata/Builtins.lc 441:76-441:105 Type
1753testdata/Builtins.lc 434:45-434:51 Type 1753testdata/Builtins.lc 441:82-441:83 V1
1754testdata/Builtins.lc 440:1-440:8 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a 1754testdata/Builtins.lc 441:84-441:105 Type
1755testdata/Builtins.lc 440:10-440:17 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a 1755testdata/Builtins.lc 441:85-441:90 Type->Type
1756testdata/Builtins.lc 440:19-440:26 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a 1756testdata/Builtins.lc 441:91-441:104 Type
1757testdata/Builtins.lc 440:34-440:37 Type->Type 1757testdata/Builtins.lc 441:92-441:95 Nat -> Type->Type
1758testdata/Builtins.lc 440:34-440:58 Type 1758testdata/Builtins.lc 441:92-441:97 Type->Type
1759testdata/Builtins.lc 440:34-440:73 Type 1759testdata/Builtins.lc 441:96-441:97 V1
1760testdata/Builtins.lc 440:38-440:58 Type 1760testdata/Builtins.lc 441:98-441:103 Type
1761testdata/Builtins.lc 440:39-440:55 Type->Type 1761testdata/Builtins.lc 443:6-443:12 Type
1762testdata/Builtins.lc 440:56-440:57 V1 1762testdata/Builtins.lc 443:6-444:12 Type
1763testdata/Builtins.lc 440:62-440:63 Type 1763testdata/Builtins.lc 444:3-444:12 Output | Type | {a:Nat} -> {b} -> FrameBuffer a b -> Output
1764testdata/Builtins.lc 440:62-440:73 Type 1764testdata/Builtins.lc 444:26-444:37 Nat -> Type->Type
1765testdata/Builtins.lc 440:67-440:68 Type 1765testdata/Builtins.lc 444:26-444:39 Type->Type
1766testdata/Builtins.lc 440:67-440:73 Type 1766testdata/Builtins.lc 444:26-444:41 Type
1767testdata/Builtins.lc 440:72-440:73 Type 1767testdata/Builtins.lc 444:26-444:51 Type
1768testdata/Builtins.lc 441:1-441:9 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> {d : Num a} -> b -> a->b 1768testdata/Builtins.lc 444:38-444:39 V3
1769testdata/Builtins.lc 441:11-441:19 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> {d : Num a} -> b -> a->b 1769testdata/Builtins.lc 444:40-444:41 V1
1770testdata/Builtins.lc 441:21-441:29 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> {d : Num a} -> b -> a->b 1770testdata/Builtins.lc 444:45-444:51 Type
1771testdata/Builtins.lc 441:34-441:80 Type 1771testdata/Builtins.lc 450:1-450:8 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
1772testdata/Builtins.lc 441:35-441:36 V3 1772testdata/Builtins.lc 450:10-450:17 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
1773testdata/Builtins.lc 441:35-441:38 Type->Type 1773testdata/Builtins.lc 450:19-450:26 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
1774testdata/Builtins.lc 441:35-441:57 Type 1774testdata/Builtins.lc 450:34-450:37 Type->Type
1775testdata/Builtins.lc 441:37-441:38 Type -> Type->Type 1775testdata/Builtins.lc 450:34-450:58 Type
1776testdata/Builtins.lc 441:39-441:55 Type->Type 1776testdata/Builtins.lc 450:34-450:73 Type
1777testdata/Builtins.lc 441:39-441:57 Type 1777testdata/Builtins.lc 450:38-450:58 Type
1778testdata/Builtins.lc 441:56-441:57 V1 1778testdata/Builtins.lc 450:39-450:55 Type->Type
1779testdata/Builtins.lc 441:59-441:62 Type->Type 1779testdata/Builtins.lc 450:56-450:57 V1
1780testdata/Builtins.lc 441:59-441:64 Type 1780testdata/Builtins.lc 450:62-450:63 Type
1781testdata/Builtins.lc 441:59-441:80 Type 1781testdata/Builtins.lc 450:62-450:73 Type
1782testdata/Builtins.lc 441:63-441:64 Type 1782testdata/Builtins.lc 450:67-450:68 Type
1783testdata/Builtins.lc 441:69-441:70 Type 1783testdata/Builtins.lc 450:67-450:73 Type
1784testdata/Builtins.lc 441:69-441:80 Type 1784testdata/Builtins.lc 450:72-450:73 Type
1785testdata/Builtins.lc 441:74-441:75 Type 1785testdata/Builtins.lc 451:1-451:9 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> {d : Num a} -> b -> a->b
1786testdata/Builtins.lc 441:74-441:80 Type 1786testdata/Builtins.lc 451:11-451:19 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> {d : Num a} -> b -> a->b
1787testdata/Builtins.lc 441:79-441:80 Type 1787testdata/Builtins.lc 451:21-451:29 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> {d : Num a} -> b -> a->b
1788testdata/Builtins.lc 442:1-442:8 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b 1788testdata/Builtins.lc 451:34-451:80 Type
1789testdata/Builtins.lc 442:10-442:17 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b 1789testdata/Builtins.lc 451:35-451:36 V3
1790testdata/Builtins.lc 442:34-442:75 Type 1790testdata/Builtins.lc 451:35-451:38 Type->Type
1791testdata/Builtins.lc 442:35-442:38 Type->Type 1791testdata/Builtins.lc 451:35-451:57 Type
1792testdata/Builtins.lc 442:35-442:40 Type 1792testdata/Builtins.lc 451:37-451:38 Type -> Type->Type
1793testdata/Builtins.lc 442:39-442:40 V5 1793testdata/Builtins.lc 451:39-451:55 Type->Type
1794testdata/Builtins.lc 442:42-442:43 V4 1794testdata/Builtins.lc 451:39-451:57 Type
1795testdata/Builtins.lc 442:42-442:45 Type->Type 1795testdata/Builtins.lc 451:56-451:57 V1
1796testdata/Builtins.lc 442:42-442:59 Type 1796testdata/Builtins.lc 451:59-451:62 Type->Type
1797testdata/Builtins.lc 442:42-442:75 Type 1797testdata/Builtins.lc 451:59-451:64 Type
1798testdata/Builtins.lc 442:44-442:45 Type -> Type->Type 1798testdata/Builtins.lc 451:59-451:80 Type
1799testdata/Builtins.lc 442:46-442:55 Nat -> Type->Type 1799testdata/Builtins.lc 451:63-451:64 Type
1800testdata/Builtins.lc 442:46-442:57 Type->Type 1800testdata/Builtins.lc 451:69-451:70 Type
1801testdata/Builtins.lc 442:46-442:59 Type 1801testdata/Builtins.lc 451:69-451:80 Type
1802testdata/Builtins.lc 442:56-442:57 V2 1802testdata/Builtins.lc 451:74-451:75 Type
1803testdata/Builtins.lc 442:58-442:59 Type 1803testdata/Builtins.lc 451:74-451:80 Type
1804testdata/Builtins.lc 442:64-442:65 Type 1804testdata/Builtins.lc 451:79-451:80 Type
1805testdata/Builtins.lc 442:64-442:75 Type 1805testdata/Builtins.lc 452:1-452:8 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b
1806testdata/Builtins.lc 442:69-442:70 Type 1806testdata/Builtins.lc 452:10-452:17 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b
1807testdata/Builtins.lc 442:69-442:75 Type 1807testdata/Builtins.lc 452:34-452:75 Type
1808testdata/Builtins.lc 442:74-442:75 Type 1808testdata/Builtins.lc 452:35-452:38 Type->Type
1809testdata/Builtins.lc 443:1-443:9 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a->b 1809testdata/Builtins.lc 452:35-452:40 Type
1810testdata/Builtins.lc 443:11-443:19 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a->b 1810testdata/Builtins.lc 452:39-452:40 V5
1811testdata/Builtins.lc 443:34-443:75 Type 1811testdata/Builtins.lc 452:42-452:43 V4
1812testdata/Builtins.lc 443:35-443:38 Type->Type 1812testdata/Builtins.lc 452:42-452:45 Type->Type
1813testdata/Builtins.lc 443:35-443:40 Type 1813testdata/Builtins.lc 452:42-452:59 Type
1814testdata/Builtins.lc 443:39-443:40 V5 1814testdata/Builtins.lc 452:42-452:75 Type
1815testdata/Builtins.lc 443:42-443:43 V4 1815testdata/Builtins.lc 452:44-452:45 Type -> Type->Type
1816testdata/Builtins.lc 443:42-443:45 Type->Type 1816testdata/Builtins.lc 452:46-452:55 Nat -> Type->Type
1817testdata/Builtins.lc 443:42-443:59 Type 1817testdata/Builtins.lc 452:46-452:57 Type->Type
1818testdata/Builtins.lc 443:42-443:75 Type 1818testdata/Builtins.lc 452:46-452:59 Type
1819testdata/Builtins.lc 443:44-443:45 Type -> Type->Type 1819testdata/Builtins.lc 452:56-452:57 V2
1820testdata/Builtins.lc 443:46-443:55 Nat -> Type->Type 1820testdata/Builtins.lc 452:58-452:59 Type
1821testdata/Builtins.lc 443:46-443:57 Type->Type 1821testdata/Builtins.lc 452:64-452:65 Type
1822testdata/Builtins.lc 443:46-443:59 Type 1822testdata/Builtins.lc 452:64-452:75 Type
1823testdata/Builtins.lc 443:56-443:57 V2 1823testdata/Builtins.lc 452:69-452:70 Type
1824testdata/Builtins.lc 443:58-443:59 Type 1824testdata/Builtins.lc 452:69-452:75 Type
1825testdata/Builtins.lc 443:64-443:65 Type 1825testdata/Builtins.lc 452:74-452:75 Type
1826testdata/Builtins.lc 443:64-443:75 Type 1826testdata/Builtins.lc 453:1-453:9 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a->b
1827testdata/Builtins.lc 443:69-443:70 Type 1827testdata/Builtins.lc 453:11-453:19 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a->b
1828testdata/Builtins.lc 443:69-443:75 Type 1828testdata/Builtins.lc 453:34-453:75 Type
1829testdata/Builtins.lc 443:74-443:75 Type
1830testdata/Builtins.lc 444:1-444:8 {a} -> {b : Signed (MatVecScalarElem a)} -> a->a
1831testdata/Builtins.lc 444:34-444:40 Type->Type
1832testdata/Builtins.lc 444:34-444:61 Type
1833testdata/Builtins.lc 444:34-444:71 Type
1834testdata/Builtins.lc 444:41-444:61 Type
1835testdata/Builtins.lc 444:42-444:58 Type->Type
1836testdata/Builtins.lc 444:59-444:60 V1
1837testdata/Builtins.lc 444:65-444:66 Type
1838testdata/Builtins.lc 444:65-444:71 Type
1839testdata/Builtins.lc 444:70-444:71 Type
1840testdata/Builtins.lc 446:1-446:9 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> b->b
1841testdata/Builtins.lc 446:11-446:18 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> b->b
1842testdata/Builtins.lc 446:20-446:28 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> b->b
1843testdata/Builtins.lc 446:34-446:80 Type
1844testdata/Builtins.lc 446:35-446:43 Type->Type
1845testdata/Builtins.lc 446:35-446:45 Type
1846testdata/Builtins.lc 446:44-446:45 V5
1847testdata/Builtins.lc 446:47-446:48 V4
1848testdata/Builtins.lc 446:47-446:50 Type->Type
1849testdata/Builtins.lc 446:47-446:64 Type
1850testdata/Builtins.lc 446:47-446:80 Type
1851testdata/Builtins.lc 446:49-446:50 Type -> Type->Type
1852testdata/Builtins.lc 446:51-446:60 Nat -> Type->Type
1853testdata/Builtins.lc 446:51-446:62 Type->Type
1854testdata/Builtins.lc 446:51-446:64 Type
1855testdata/Builtins.lc 446:61-446:62 V2
1856testdata/Builtins.lc 446:63-446:64 Type
1857testdata/Builtins.lc 446:69-446:70 Type
1858testdata/Builtins.lc 446:69-446:80 Type
1859testdata/Builtins.lc 446:74-446:75 Type
1860testdata/Builtins.lc 446:74-446:80 Type
1861testdata/Builtins.lc 446:79-446:80 Type
1862testdata/Builtins.lc 447:1-447:10 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> a->b
1863testdata/Builtins.lc 447:12-447:20 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> a->b
1864testdata/Builtins.lc 447:22-447:31 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> a->b
1865testdata/Builtins.lc 447:34-447:80 Type
1866testdata/Builtins.lc 447:35-447:43 Type->Type
1867testdata/Builtins.lc 447:35-447:45 Type
1868testdata/Builtins.lc 447:44-447:45 V5
1869testdata/Builtins.lc 447:47-447:48 V4
1870testdata/Builtins.lc 447:47-447:50 Type->Type
1871testdata/Builtins.lc 447:47-447:64 Type
1872testdata/Builtins.lc 447:47-447:80 Type
1873testdata/Builtins.lc 447:49-447:50 Type -> Type->Type
1874testdata/Builtins.lc 447:51-447:60 Nat -> Type->Type
1875testdata/Builtins.lc 447:51-447:62 Type->Type
1876testdata/Builtins.lc 447:51-447:64 Type
1877testdata/Builtins.lc 447:61-447:62 V2
1878testdata/Builtins.lc 447:63-447:64 Type
1879testdata/Builtins.lc 447:69-447:70 Type
1880testdata/Builtins.lc 447:69-447:80 Type
1881testdata/Builtins.lc 447:74-447:75 Type
1882testdata/Builtins.lc 447:74-447:80 Type
1883testdata/Builtins.lc 447:79-447:80 Type
1884testdata/Builtins.lc 448:1-448:9 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b->b
1885testdata/Builtins.lc 448:34-448:75 Type
1886testdata/Builtins.lc 448:35-448:43 Type->Type
1887testdata/Builtins.lc 448:35-448:45 Type
1888testdata/Builtins.lc 448:44-448:45 V5
1889testdata/Builtins.lc 448:47-448:48 V4
1890testdata/Builtins.lc 448:47-448:50 Type->Type
1891testdata/Builtins.lc 448:47-448:64 Type
1892testdata/Builtins.lc 448:47-448:75 Type
1893testdata/Builtins.lc 448:49-448:50 Type -> Type->Type
1894testdata/Builtins.lc 448:51-448:60 Nat -> Type->Type
1895testdata/Builtins.lc 448:51-448:62 Type->Type
1896testdata/Builtins.lc 448:51-448:64 Type
1897testdata/Builtins.lc 448:61-448:62 V2
1898testdata/Builtins.lc 448:63-448:64 Type
1899testdata/Builtins.lc 448:69-448:70 Type
1900testdata/Builtins.lc 448:69-448:75 Type
1901testdata/Builtins.lc 448:74-448:75 Type
1902testdata/Builtins.lc 449:1-449:12 {a} -> {b} -> {c:Nat} -> {d} -> {e : Integral a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Word} -> b -> d->b
1903testdata/Builtins.lc 449:14-449:25 {a} -> {b} -> {c:Nat} -> {d} -> {e : Integral a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Word} -> b -> d->b
1904testdata/Builtins.lc 449:34-449:102 Type
1905testdata/Builtins.lc 449:35-449:43 Type->Type
1906testdata/Builtins.lc 449:35-449:45 Type
1907testdata/Builtins.lc 449:44-449:45 V7
1908testdata/Builtins.lc 449:47-449:48 V6
1909testdata/Builtins.lc 449:47-449:50 Type->Type
1910testdata/Builtins.lc 449:47-449:64 Type
1911testdata/Builtins.lc 449:47-449:102 Type
1912testdata/Builtins.lc 449:49-449:50 Type -> Type->Type
1913testdata/Builtins.lc 449:51-449:60 Nat -> Type->Type
1914testdata/Builtins.lc 449:51-449:62 Type->Type
1915testdata/Builtins.lc 449:51-449:64 Type
1916testdata/Builtins.lc 449:61-449:62 V4
1917testdata/Builtins.lc 449:63-449:64 Type
1918testdata/Builtins.lc 449:66-449:67 V3
1919testdata/Builtins.lc 449:66-449:69 Type->Type
1920testdata/Builtins.lc 449:66-449:86 Type
1921testdata/Builtins.lc 449:66-449:102 Type
1922testdata/Builtins.lc 449:68-449:69 Type -> Type->Type
1923testdata/Builtins.lc 449:70-449:79 Nat -> Type->Type
1924testdata/Builtins.lc 449:70-449:81 Type->Type
1925testdata/Builtins.lc 449:70-449:86 Type
1926testdata/Builtins.lc 449:80-449:81 Nat
1927testdata/Builtins.lc 449:82-449:86 Type
1928testdata/Builtins.lc 449:91-449:92 Type
1929testdata/Builtins.lc 449:91-449:102 Type
1930testdata/Builtins.lc 449:96-449:97 Type
1931testdata/Builtins.lc 449:96-449:102 Type
1932testdata/Builtins.lc 449:101-449:102 Type
1933testdata/Builtins.lc 450:1-450:13 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> Word->b
1934testdata/Builtins.lc 450:15-450:27 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> Word->b
1935testdata/Builtins.lc 450:34-450:83 Type
1936testdata/Builtins.lc 450:35-450:43 Type->Type
1937testdata/Builtins.lc 450:35-450:45 Type
1938testdata/Builtins.lc 450:44-450:45 V5
1939testdata/Builtins.lc 450:47-450:48 V4
1940testdata/Builtins.lc 450:47-450:50 Type->Type
1941testdata/Builtins.lc 450:47-450:64 Type
1942testdata/Builtins.lc 450:47-450:83 Type
1943testdata/Builtins.lc 450:49-450:50 Type -> Type->Type
1944testdata/Builtins.lc 450:51-450:60 Nat -> Type->Type
1945testdata/Builtins.lc 450:51-450:62 Type->Type
1946testdata/Builtins.lc 450:51-450:64 Type
1947testdata/Builtins.lc 450:61-450:62 V2
1948testdata/Builtins.lc 450:63-450:64 Type
1949testdata/Builtins.lc 450:69-450:70 Type
1950testdata/Builtins.lc 450:69-450:83 Type
1951testdata/Builtins.lc 450:74-450:78 Type
1952testdata/Builtins.lc 450:74-450:83 Type
1953testdata/Builtins.lc 450:82-450:83 Type
1954testdata/Builtins.lc 452:1-452:8 Bool -> Bool->Bool
1955testdata/Builtins.lc 452:10-452:16 Bool -> Bool->Bool
1956testdata/Builtins.lc 452:18-452:25 Bool -> Bool->Bool
1957testdata/Builtins.lc 452:34-452:38 Type
1958testdata/Builtins.lc 452:42-452:46 Type
1959testdata/Builtins.lc 452:42-452:54 Type
1960testdata/Builtins.lc 452:50-452:54 Type
1961testdata/Builtins.lc 453:1-453:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Bool} -> a->a
1962testdata/Builtins.lc 453:34-453:56 Type
1963testdata/Builtins.lc 453:34-453:66 Type
1964testdata/Builtins.lc 453:35-453:36 V3
1965testdata/Builtins.lc 453:35-453:38 Type->Type 1829testdata/Builtins.lc 453:35-453:38 Type->Type
1966testdata/Builtins.lc 453:37-453:38 Type -> Type->Type 1830testdata/Builtins.lc 453:35-453:40 Type
1967testdata/Builtins.lc 453:39-453:48 Nat -> Type->Type 1831testdata/Builtins.lc 453:39-453:40 V5
1968testdata/Builtins.lc 453:39-453:50 Type->Type 1832testdata/Builtins.lc 453:42-453:43 V4
1969testdata/Builtins.lc 453:39-453:55 Type 1833testdata/Builtins.lc 453:42-453:45 Type->Type
1970testdata/Builtins.lc 453:49-453:50 V1 1834testdata/Builtins.lc 453:42-453:59 Type
1971testdata/Builtins.lc 453:51-453:55 Type 1835testdata/Builtins.lc 453:42-453:75 Type
1972testdata/Builtins.lc 453:60-453:61 Type 1836testdata/Builtins.lc 453:44-453:45 Type -> Type->Type
1973testdata/Builtins.lc 453:60-453:66 Type 1837testdata/Builtins.lc 453:46-453:55 Nat -> Type->Type
1974testdata/Builtins.lc 453:65-453:66 Type 1838testdata/Builtins.lc 453:46-453:57 Type->Type
1975testdata/Builtins.lc 454:1-454:8 {a:Nat} -> VecScalar a Bool -> Bool 1839testdata/Builtins.lc 453:46-453:59 Type
1976testdata/Builtins.lc 454:10-454:17 {a:Nat} -> VecScalar a Bool -> Bool 1840testdata/Builtins.lc 453:56-453:57 V2
1977testdata/Builtins.lc 454:34-454:43 Nat -> Type->Type 1841testdata/Builtins.lc 453:58-453:59 Type
1978testdata/Builtins.lc 454:34-454:45 Type->Type 1842testdata/Builtins.lc 453:64-453:65 Type
1979testdata/Builtins.lc 454:34-454:50 Type 1843testdata/Builtins.lc 453:64-453:75 Type
1980testdata/Builtins.lc 454:34-454:58 Type 1844testdata/Builtins.lc 453:69-453:70 Type
1981testdata/Builtins.lc 454:44-454:45 V1 1845testdata/Builtins.lc 453:69-453:75 Type
1982testdata/Builtins.lc 454:46-454:50 Type 1846testdata/Builtins.lc 453:74-453:75 Type
1983testdata/Builtins.lc 454:54-454:58 Type 1847testdata/Builtins.lc 454:1-454:8 {a} -> {b : Signed (MatVecScalarElem a)} -> a->a
1984testdata/Builtins.lc 457:1-457:9 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1848testdata/Builtins.lc 454:34-454:40 Type->Type
1985testdata/Builtins.lc 457:11-457:20 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1849testdata/Builtins.lc 454:34-454:61 Type
1986testdata/Builtins.lc 457:22-457:30 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1850testdata/Builtins.lc 454:34-454:71 Type
1987testdata/Builtins.lc 457:32-457:41 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1851testdata/Builtins.lc 454:41-454:61 Type
1988testdata/Builtins.lc 457:43-457:51 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1852testdata/Builtins.lc 454:42-454:58 Type->Type
1989testdata/Builtins.lc 457:53-457:62 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1853testdata/Builtins.lc 454:59-454:60 V1
1990testdata/Builtins.lc 457:64-457:71 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1854testdata/Builtins.lc 454:65-454:66 Type
1991testdata/Builtins.lc 457:73-457:81 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1855testdata/Builtins.lc 454:65-454:71 Type
1992testdata/Builtins.lc 457:83-457:94 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1856testdata/Builtins.lc 454:70-454:71 Type
1993testdata/Builtins.lc 457:96-457:107 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1857testdata/Builtins.lc 456:1-456:9 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> b->b
1994testdata/Builtins.lc 457:109-457:116 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1858testdata/Builtins.lc 456:11-456:18 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> b->b
1995testdata/Builtins.lc 457:118-457:126 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1859testdata/Builtins.lc 456:20-456:28 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> b->b
1996testdata/Builtins.lc 457:128-457:135 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1860testdata/Builtins.lc 456:34-456:80 Type
1997testdata/Builtins.lc 457:137-457:145 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1861testdata/Builtins.lc 456:35-456:43 Type->Type
1998testdata/Builtins.lc 457:147-457:154 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1862testdata/Builtins.lc 456:35-456:45 Type
1999testdata/Builtins.lc 457:156-457:163 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1863testdata/Builtins.lc 456:44-456:45 V5
2000testdata/Builtins.lc 457:165-457:173 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1864testdata/Builtins.lc 456:47-456:48 V4
2001testdata/Builtins.lc 457:175-457:183 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1865testdata/Builtins.lc 456:47-456:50 Type->Type
2002testdata/Builtins.lc 457:185-457:193 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1866testdata/Builtins.lc 456:47-456:64 Type
2003testdata/Builtins.lc 457:195-457:206 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1867testdata/Builtins.lc 456:47-456:80 Type
2004testdata/Builtins.lc 458:34-458:57 Type 1868testdata/Builtins.lc 456:49-456:50 Type -> Type->Type
2005testdata/Builtins.lc 458:34-458:67 Type 1869testdata/Builtins.lc 456:51-456:60 Nat -> Type->Type
2006testdata/Builtins.lc 458:35-458:36 V3 1870testdata/Builtins.lc 456:51-456:62 Type->Type
2007testdata/Builtins.lc 458:35-458:38 Type->Type 1871testdata/Builtins.lc 456:51-456:64 Type
2008testdata/Builtins.lc 458:37-458:38 Type -> Type->Type 1872testdata/Builtins.lc 456:61-456:62 V2
2009testdata/Builtins.lc 458:39-458:48 Nat -> Type->Type 1873testdata/Builtins.lc 456:63-456:64 Type
2010testdata/Builtins.lc 458:39-458:50 Type->Type 1874testdata/Builtins.lc 456:69-456:70 Type
2011testdata/Builtins.lc 458:39-458:56 Type 1875testdata/Builtins.lc 456:69-456:80 Type
2012testdata/Builtins.lc 458:49-458:50 V1 1876testdata/Builtins.lc 456:74-456:75 Type
2013testdata/Builtins.lc 458:51-458:56 Type 1877testdata/Builtins.lc 456:74-456:80 Type
2014testdata/Builtins.lc 458:61-458:62 Type 1878testdata/Builtins.lc 456:79-456:80 Type
2015testdata/Builtins.lc 458:61-458:67 Type 1879testdata/Builtins.lc 457:1-457:10 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> a->b
2016testdata/Builtins.lc 458:66-458:67 Type 1880testdata/Builtins.lc 457:12-457:20 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> a->b
2017testdata/Builtins.lc 459:1-459:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a 1881testdata/Builtins.lc 457:22-457:31 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> a->b
2018testdata/Builtins.lc 459:10-459:19 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a 1882testdata/Builtins.lc 457:34-457:80 Type
2019testdata/Builtins.lc 459:34-459:57 Type 1883testdata/Builtins.lc 457:35-457:43 Type->Type
2020testdata/Builtins.lc 459:34-459:72 Type 1884testdata/Builtins.lc 457:35-457:45 Type
2021testdata/Builtins.lc 459:35-459:36 V3 1885testdata/Builtins.lc 457:44-457:45 V5
2022testdata/Builtins.lc 459:35-459:38 Type->Type 1886testdata/Builtins.lc 457:47-457:48 V4
2023testdata/Builtins.lc 459:37-459:38 Type -> Type->Type 1887testdata/Builtins.lc 457:47-457:50 Type->Type
2024testdata/Builtins.lc 459:39-459:48 Nat -> Type->Type 1888testdata/Builtins.lc 457:47-457:64 Type
2025testdata/Builtins.lc 459:39-459:50 Type->Type 1889testdata/Builtins.lc 457:47-457:80 Type
2026testdata/Builtins.lc 459:39-459:56 Type 1890testdata/Builtins.lc 457:49-457:50 Type -> Type->Type
2027testdata/Builtins.lc 459:49-459:50 V1 1891testdata/Builtins.lc 457:51-457:60 Nat -> Type->Type
2028testdata/Builtins.lc 459:51-459:56 Type 1892testdata/Builtins.lc 457:51-457:62 Type->Type
2029testdata/Builtins.lc 459:61-459:62 Type 1893testdata/Builtins.lc 457:51-457:64 Type
2030testdata/Builtins.lc 459:61-459:72 Type 1894testdata/Builtins.lc 457:61-457:62 V2
2031testdata/Builtins.lc 459:66-459:67 Type 1895testdata/Builtins.lc 457:63-457:64 Type
2032testdata/Builtins.lc 459:66-459:72 Type 1896testdata/Builtins.lc 457:69-457:70 Type
2033testdata/Builtins.lc 459:71-459:72 Type 1897testdata/Builtins.lc 457:69-457:80 Type
2034testdata/Builtins.lc 461:1-461:10 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1898testdata/Builtins.lc 457:74-457:75 Type
2035testdata/Builtins.lc 461:12-461:21 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1899testdata/Builtins.lc 457:74-457:80 Type
2036testdata/Builtins.lc 461:23-461:32 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1900testdata/Builtins.lc 457:79-457:80 Type
2037testdata/Builtins.lc 461:34-461:47 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1901testdata/Builtins.lc 458:1-458:9 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b->b
2038testdata/Builtins.lc 461:49-461:57 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1902testdata/Builtins.lc 458:34-458:75 Type
2039testdata/Builtins.lc 461:59-461:68 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1903testdata/Builtins.lc 458:35-458:43 Type->Type
2040testdata/Builtins.lc 462:34-462:57 Type 1904testdata/Builtins.lc 458:35-458:45 Type
2041testdata/Builtins.lc 462:34-462:67 Type 1905testdata/Builtins.lc 458:44-458:45 V5
2042testdata/Builtins.lc 462:35-462:36 V3 1906testdata/Builtins.lc 458:47-458:48 V4
2043testdata/Builtins.lc 462:35-462:38 Type->Type 1907testdata/Builtins.lc 458:47-458:50 Type->Type
2044testdata/Builtins.lc 462:37-462:38 Type -> Type->Type 1908testdata/Builtins.lc 458:47-458:64 Type
2045testdata/Builtins.lc 462:39-462:48 Nat -> Type->Type 1909testdata/Builtins.lc 458:47-458:75 Type
2046testdata/Builtins.lc 462:39-462:50 Type->Type 1910testdata/Builtins.lc 458:49-458:50 Type -> Type->Type
2047testdata/Builtins.lc 462:39-462:56 Type 1911testdata/Builtins.lc 458:51-458:60 Nat -> Type->Type
2048testdata/Builtins.lc 462:49-462:50 V1 1912testdata/Builtins.lc 458:51-458:62 Type->Type
2049testdata/Builtins.lc 462:51-462:56 Type 1913testdata/Builtins.lc 458:51-458:64 Type
2050testdata/Builtins.lc 462:61-462:62 Type 1914testdata/Builtins.lc 458:61-458:62 V2
2051testdata/Builtins.lc 462:61-462:67 Type 1915testdata/Builtins.lc 458:63-458:64 Type
2052testdata/Builtins.lc 462:66-462:67 Type 1916testdata/Builtins.lc 458:69-458:70 Type
2053testdata/Builtins.lc 463:1-463:8 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b 1917testdata/Builtins.lc 458:69-458:75 Type
2054testdata/Builtins.lc 463:10-463:17 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b 1918testdata/Builtins.lc 458:74-458:75 Type
2055testdata/Builtins.lc 463:34-463:75 Type 1919testdata/Builtins.lc 459:1-459:12 {a} -> {b} -> {c:Nat} -> {d} -> {e : Integral a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Word} -> b -> d->b
1920testdata/Builtins.lc 459:14-459:25 {a} -> {b} -> {c:Nat} -> {d} -> {e : Integral a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Word} -> b -> d->b
1921testdata/Builtins.lc 459:34-459:102 Type
1922testdata/Builtins.lc 459:35-459:43 Type->Type
1923testdata/Builtins.lc 459:35-459:45 Type
1924testdata/Builtins.lc 459:44-459:45 V7
1925testdata/Builtins.lc 459:47-459:48 V6
1926testdata/Builtins.lc 459:47-459:50 Type->Type
1927testdata/Builtins.lc 459:47-459:64 Type
1928testdata/Builtins.lc 459:47-459:102 Type
1929testdata/Builtins.lc 459:49-459:50 Type -> Type->Type
1930testdata/Builtins.lc 459:51-459:60 Nat -> Type->Type
1931testdata/Builtins.lc 459:51-459:62 Type->Type
1932testdata/Builtins.lc 459:51-459:64 Type
1933testdata/Builtins.lc 459:61-459:62 V4
1934testdata/Builtins.lc 459:63-459:64 Type
1935testdata/Builtins.lc 459:66-459:67 V3
1936testdata/Builtins.lc 459:66-459:69 Type->Type
1937testdata/Builtins.lc 459:66-459:86 Type
1938testdata/Builtins.lc 459:66-459:102 Type
1939testdata/Builtins.lc 459:68-459:69 Type -> Type->Type
1940testdata/Builtins.lc 459:70-459:79 Nat -> Type->Type
1941testdata/Builtins.lc 459:70-459:81 Type->Type
1942testdata/Builtins.lc 459:70-459:86 Type
1943testdata/Builtins.lc 459:80-459:81 Nat
1944testdata/Builtins.lc 459:82-459:86 Type
1945testdata/Builtins.lc 459:91-459:92 Type
1946testdata/Builtins.lc 459:91-459:102 Type
1947testdata/Builtins.lc 459:96-459:97 Type
1948testdata/Builtins.lc 459:96-459:102 Type
1949testdata/Builtins.lc 459:101-459:102 Type
1950testdata/Builtins.lc 460:1-460:13 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> Word->b
1951testdata/Builtins.lc 460:15-460:27 {a} -> {b} -> {c:Nat} -> {d : Integral a} -> {e : b ~ VecScalar c a} -> b -> Word->b
1952testdata/Builtins.lc 460:34-460:83 Type
1953testdata/Builtins.lc 460:35-460:43 Type->Type
1954testdata/Builtins.lc 460:35-460:45 Type
1955testdata/Builtins.lc 460:44-460:45 V5
1956testdata/Builtins.lc 460:47-460:48 V4
1957testdata/Builtins.lc 460:47-460:50 Type->Type
1958testdata/Builtins.lc 460:47-460:64 Type
1959testdata/Builtins.lc 460:47-460:83 Type
1960testdata/Builtins.lc 460:49-460:50 Type -> Type->Type
1961testdata/Builtins.lc 460:51-460:60 Nat -> Type->Type
1962testdata/Builtins.lc 460:51-460:62 Type->Type
1963testdata/Builtins.lc 460:51-460:64 Type
1964testdata/Builtins.lc 460:61-460:62 V2
1965testdata/Builtins.lc 460:63-460:64 Type
1966testdata/Builtins.lc 460:69-460:70 Type
1967testdata/Builtins.lc 460:69-460:83 Type
1968testdata/Builtins.lc 460:74-460:78 Type
1969testdata/Builtins.lc 460:74-460:83 Type
1970testdata/Builtins.lc 460:82-460:83 Type
1971testdata/Builtins.lc 462:1-462:8 Bool -> Bool->Bool
1972testdata/Builtins.lc 462:10-462:16 Bool -> Bool->Bool
1973testdata/Builtins.lc 462:18-462:25 Bool -> Bool->Bool
1974testdata/Builtins.lc 462:34-462:38 Type
1975testdata/Builtins.lc 462:42-462:46 Type
1976testdata/Builtins.lc 462:42-462:54 Type
1977testdata/Builtins.lc 462:50-462:54 Type
1978testdata/Builtins.lc 463:1-463:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Bool} -> a->a
1979testdata/Builtins.lc 463:34-463:56 Type
1980testdata/Builtins.lc 463:34-463:66 Type
1981testdata/Builtins.lc 463:35-463:36 V3
2056testdata/Builtins.lc 463:35-463:38 Type->Type 1982testdata/Builtins.lc 463:35-463:38 Type->Type
2057testdata/Builtins.lc 463:35-463:40 Type 1983testdata/Builtins.lc 463:37-463:38 Type -> Type->Type
2058testdata/Builtins.lc 463:39-463:40 V5 1984testdata/Builtins.lc 463:39-463:48 Nat -> Type->Type
2059testdata/Builtins.lc 463:42-463:43 V4 1985testdata/Builtins.lc 463:39-463:50 Type->Type
2060testdata/Builtins.lc 463:42-463:45 Type->Type 1986testdata/Builtins.lc 463:39-463:55 Type
2061testdata/Builtins.lc 463:42-463:59 Type 1987testdata/Builtins.lc 463:49-463:50 V1
2062testdata/Builtins.lc 463:42-463:75 Type 1988testdata/Builtins.lc 463:51-463:55 Type
2063testdata/Builtins.lc 463:44-463:45 Type -> Type->Type 1989testdata/Builtins.lc 463:60-463:61 Type
2064testdata/Builtins.lc 463:46-463:55 Nat -> Type->Type 1990testdata/Builtins.lc 463:60-463:66 Type
2065testdata/Builtins.lc 463:46-463:57 Type->Type 1991testdata/Builtins.lc 463:65-463:66 Type
2066testdata/Builtins.lc 463:46-463:59 Type 1992testdata/Builtins.lc 464:1-464:8 {a:Nat} -> VecScalar a Bool -> Bool
2067testdata/Builtins.lc 463:56-463:57 V2 1993testdata/Builtins.lc 464:10-464:17 {a:Nat} -> VecScalar a Bool -> Bool
2068testdata/Builtins.lc 463:58-463:59 Type 1994testdata/Builtins.lc 464:34-464:43 Nat -> Type->Type
2069testdata/Builtins.lc 463:64-463:65 Type 1995testdata/Builtins.lc 464:34-464:45 Type->Type
2070testdata/Builtins.lc 463:64-463:75 Type 1996testdata/Builtins.lc 464:34-464:50 Type
2071testdata/Builtins.lc 463:69-463:70 Type 1997testdata/Builtins.lc 464:34-464:58 Type
2072testdata/Builtins.lc 463:69-463:75 Type 1998testdata/Builtins.lc 464:44-464:45 V1
2073testdata/Builtins.lc 463:74-463:75 Type 1999testdata/Builtins.lc 464:46-464:50 Type
2074testdata/Builtins.lc 464:1-464:9 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a->b 2000testdata/Builtins.lc 464:54-464:58 Type
2075testdata/Builtins.lc 464:11-464:19 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a->b 2001testdata/Builtins.lc 467:1-467:9 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2076testdata/Builtins.lc 464:34-464:75 Type 2002testdata/Builtins.lc 467:11-467:20 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2077testdata/Builtins.lc 464:35-464:38 Type->Type 2003testdata/Builtins.lc 467:22-467:30 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2078testdata/Builtins.lc 464:35-464:40 Type 2004testdata/Builtins.lc 467:32-467:41 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2079testdata/Builtins.lc 464:39-464:40 V5 2005testdata/Builtins.lc 467:43-467:51 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2080testdata/Builtins.lc 464:42-464:43 V4 2006testdata/Builtins.lc 467:53-467:62 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2081testdata/Builtins.lc 464:42-464:45 Type->Type 2007testdata/Builtins.lc 467:64-467:71 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2082testdata/Builtins.lc 464:42-464:59 Type 2008testdata/Builtins.lc 467:73-467:81 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2083testdata/Builtins.lc 464:42-464:75 Type 2009testdata/Builtins.lc 467:83-467:94 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2084testdata/Builtins.lc 464:44-464:45 Type -> Type->Type 2010testdata/Builtins.lc 467:96-467:107 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2085testdata/Builtins.lc 464:46-464:55 Nat -> Type->Type 2011testdata/Builtins.lc 467:109-467:116 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2086testdata/Builtins.lc 464:46-464:57 Type->Type 2012testdata/Builtins.lc 467:118-467:126 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2087testdata/Builtins.lc 464:46-464:59 Type 2013testdata/Builtins.lc 467:128-467:135 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2088testdata/Builtins.lc 464:56-464:57 V2 2014testdata/Builtins.lc 467:137-467:145 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2089testdata/Builtins.lc 464:58-464:59 Type 2015testdata/Builtins.lc 467:147-467:154 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2090testdata/Builtins.lc 464:64-464:65 Type 2016testdata/Builtins.lc 467:156-467:163 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2091testdata/Builtins.lc 464:64-464:75 Type 2017testdata/Builtins.lc 467:165-467:173 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2092testdata/Builtins.lc 464:69-464:70 Type 2018testdata/Builtins.lc 467:175-467:183 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2093testdata/Builtins.lc 464:69-464:75 Type 2019testdata/Builtins.lc 467:185-467:193 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2094testdata/Builtins.lc 464:74-464:75 Type 2020testdata/Builtins.lc 467:195-467:206 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2095testdata/Builtins.lc 465:1-465:10 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a->c 2021testdata/Builtins.lc 468:34-468:57 Type
2096testdata/Builtins.lc 465:12-465:21 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a->c 2022testdata/Builtins.lc 468:34-468:67 Type
2097testdata/Builtins.lc 465:34-465:89 Type 2023testdata/Builtins.lc 468:35-468:36 V3
2098testdata/Builtins.lc 465:35-465:36 V5
2099testdata/Builtins.lc 465:35-465:38 Type->Type
2100testdata/Builtins.lc 465:35-465:56 Type
2101testdata/Builtins.lc 465:37-465:38 Type -> Type->Type
2102testdata/Builtins.lc 465:39-465:48 Nat -> Type->Type
2103testdata/Builtins.lc 465:39-465:50 Type->Type
2104testdata/Builtins.lc 465:39-465:56 Type
2105testdata/Builtins.lc 465:49-465:50 V3
2106testdata/Builtins.lc 465:51-465:56 Type
2107testdata/Builtins.lc 465:58-465:59 V2
2108testdata/Builtins.lc 465:58-465:61 Type->Type
2109testdata/Builtins.lc 465:58-465:78 Type
2110testdata/Builtins.lc 465:58-465:89 Type
2111testdata/Builtins.lc 465:60-465:61 Type -> Type->Type
2112testdata/Builtins.lc 465:62-465:71 Nat -> Type->Type
2113testdata/Builtins.lc 465:62-465:73 Type->Type
2114testdata/Builtins.lc 465:62-465:78 Type
2115testdata/Builtins.lc 465:72-465:73 Nat
2116testdata/Builtins.lc 465:74-465:78 Type
2117testdata/Builtins.lc 465:83-465:84 Type
2118testdata/Builtins.lc 465:83-465:89 Type
2119testdata/Builtins.lc 465:88-465:89 Type
2120testdata/Builtins.lc 466:1-466:8 {a} -> {b} -> {c:Nat} -> {d : Signed a} -> {e : b ~ VecScalar c a} -> b->b
2121testdata/Builtins.lc 466:10-466:18 {a} -> {b} -> {c:Nat} -> {d : Signed a} -> {e : b ~ VecScalar c a} -> b->b
2122testdata/Builtins.lc 466:34-466:73 Type
2123testdata/Builtins.lc 466:35-466:41 Type->Type
2124testdata/Builtins.lc 466:35-466:43 Type
2125testdata/Builtins.lc 466:42-466:43 V5
2126testdata/Builtins.lc 466:45-466:46 V4
2127testdata/Builtins.lc 466:45-466:48 Type->Type
2128testdata/Builtins.lc 466:45-466:62 Type
2129testdata/Builtins.lc 466:45-466:73 Type
2130testdata/Builtins.lc 466:47-466:48 Type -> Type->Type
2131testdata/Builtins.lc 466:49-466:58 Nat -> Type->Type
2132testdata/Builtins.lc 466:49-466:60 Type->Type
2133testdata/Builtins.lc 466:49-466:62 Type
2134testdata/Builtins.lc 466:59-466:60 V2
2135testdata/Builtins.lc 466:61-466:62 Type
2136testdata/Builtins.lc 466:67-466:68 Type
2137testdata/Builtins.lc 466:67-466:73 Type
2138testdata/Builtins.lc 466:72-466:73 Type
2139testdata/Builtins.lc 467:1-467:9 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> Tuple2 a a
2140testdata/Builtins.lc 467:34-467:57 Type
2141testdata/Builtins.lc 467:34-467:72 Type
2142testdata/Builtins.lc 467:35-467:36 V3
2143testdata/Builtins.lc 467:35-467:38 Type->Type
2144testdata/Builtins.lc 467:37-467:38 Type -> Type->Type
2145testdata/Builtins.lc 467:39-467:48 Nat -> Type->Type
2146testdata/Builtins.lc 467:39-467:50 Type->Type
2147testdata/Builtins.lc 467:39-467:56 Type
2148testdata/Builtins.lc 467:49-467:50 V1
2149testdata/Builtins.lc 467:51-467:56 Type
2150testdata/Builtins.lc 467:61-467:62 Type
2151testdata/Builtins.lc 467:61-467:72 Type
2152testdata/Builtins.lc 467:66-467:72 Type
2153testdata/Builtins.lc 467:67-467:68 Type
2154testdata/Builtins.lc 467:70-467:71 Type
2155testdata/Builtins.lc 468:1-468:10 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b -> b->b
2156testdata/Builtins.lc 468:34-468:80 Type
2157testdata/Builtins.lc 468:35-468:38 Type->Type 2024testdata/Builtins.lc 468:35-468:38 Type->Type
2158testdata/Builtins.lc 468:35-468:40 Type 2025testdata/Builtins.lc 468:37-468:38 Type -> Type->Type
2159testdata/Builtins.lc 468:39-468:40 V5 2026testdata/Builtins.lc 468:39-468:48 Nat -> Type->Type
2160testdata/Builtins.lc 468:42-468:43 V4 2027testdata/Builtins.lc 468:39-468:50 Type->Type
2161testdata/Builtins.lc 468:42-468:45 Type->Type 2028testdata/Builtins.lc 468:39-468:56 Type
2162testdata/Builtins.lc 468:42-468:59 Type 2029testdata/Builtins.lc 468:49-468:50 V1
2163testdata/Builtins.lc 468:42-468:80 Type 2030testdata/Builtins.lc 468:51-468:56 Type
2164testdata/Builtins.lc 468:44-468:45 Type -> Type->Type 2031testdata/Builtins.lc 468:61-468:62 Type
2165testdata/Builtins.lc 468:46-468:55 Nat -> Type->Type 2032testdata/Builtins.lc 468:61-468:67 Type
2166testdata/Builtins.lc 468:46-468:57 Type->Type 2033testdata/Builtins.lc 468:66-468:67 Type
2167testdata/Builtins.lc 468:46-468:59 Type 2034testdata/Builtins.lc 469:1-469:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a
2168testdata/Builtins.lc 468:56-468:57 V2 2035testdata/Builtins.lc 469:10-469:19 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a
2169testdata/Builtins.lc 468:58-468:59 Type 2036testdata/Builtins.lc 469:34-469:57 Type
2170testdata/Builtins.lc 468:64-468:65 Type 2037testdata/Builtins.lc 469:34-469:72 Type
2171testdata/Builtins.lc 468:64-468:80 Type 2038testdata/Builtins.lc 469:35-469:36 V3
2172testdata/Builtins.lc 468:69-468:70 Type
2173testdata/Builtins.lc 468:69-468:80 Type
2174testdata/Builtins.lc 468:74-468:75 Type
2175testdata/Builtins.lc 468:74-468:80 Type
2176testdata/Builtins.lc 468:79-468:80 Type
2177testdata/Builtins.lc 469:1-469:11 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a -> a->b
2178testdata/Builtins.lc 469:34-469:80 Type
2179testdata/Builtins.lc 469:35-469:38 Type->Type 2039testdata/Builtins.lc 469:35-469:38 Type->Type
2180testdata/Builtins.lc 469:35-469:40 Type 2040testdata/Builtins.lc 469:37-469:38 Type -> Type->Type
2181testdata/Builtins.lc 469:39-469:40 V5 2041testdata/Builtins.lc 469:39-469:48 Nat -> Type->Type
2182testdata/Builtins.lc 469:42-469:43 V4 2042testdata/Builtins.lc 469:39-469:50 Type->Type
2183testdata/Builtins.lc 469:42-469:45 Type->Type 2043testdata/Builtins.lc 469:39-469:56 Type
2184testdata/Builtins.lc 469:42-469:59 Type 2044testdata/Builtins.lc 469:49-469:50 V1
2185testdata/Builtins.lc 469:42-469:80 Type 2045testdata/Builtins.lc 469:51-469:56 Type
2186testdata/Builtins.lc 469:44-469:45 Type -> Type->Type 2046testdata/Builtins.lc 469:61-469:62 Type
2187testdata/Builtins.lc 469:46-469:55 Nat -> Type->Type 2047testdata/Builtins.lc 469:61-469:72 Type
2188testdata/Builtins.lc 469:46-469:57 Type->Type 2048testdata/Builtins.lc 469:66-469:67 Type
2189testdata/Builtins.lc 469:46-469:59 Type 2049testdata/Builtins.lc 469:66-469:72 Type
2190testdata/Builtins.lc 469:56-469:57 V2 2050testdata/Builtins.lc 469:71-469:72 Type
2191testdata/Builtins.lc 469:58-469:59 Type 2051testdata/Builtins.lc 471:1-471:10 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2192testdata/Builtins.lc 469:64-469:65 Type 2052testdata/Builtins.lc 471:12-471:21 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2193testdata/Builtins.lc 469:64-469:80 Type 2053testdata/Builtins.lc 471:23-471:32 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2194testdata/Builtins.lc 469:69-469:70 Type 2054testdata/Builtins.lc 471:34-471:47 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2195testdata/Builtins.lc 469:69-469:80 Type 2055testdata/Builtins.lc 471:49-471:57 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2196testdata/Builtins.lc 469:74-469:75 Type 2056testdata/Builtins.lc 471:59-471:68 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2197testdata/Builtins.lc 469:74-469:80 Type 2057testdata/Builtins.lc 472:34-472:57 Type
2198testdata/Builtins.lc 469:79-469:80 Type 2058testdata/Builtins.lc 472:34-472:67 Type
2199testdata/Builtins.lc 470:1-470:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a 2059testdata/Builtins.lc 472:35-472:36 V3
2200testdata/Builtins.lc 470:34-470:57 Type
2201testdata/Builtins.lc 470:34-470:77 Type
2202testdata/Builtins.lc 470:35-470:36 V3
2203testdata/Builtins.lc 470:35-470:38 Type->Type
2204testdata/Builtins.lc 470:37-470:38 Type -> Type->Type
2205testdata/Builtins.lc 470:39-470:48 Nat -> Type->Type
2206testdata/Builtins.lc 470:39-470:50 Type->Type
2207testdata/Builtins.lc 470:39-470:56 Type
2208testdata/Builtins.lc 470:49-470:50 V1
2209testdata/Builtins.lc 470:51-470:56 Type
2210testdata/Builtins.lc 470:61-470:62 Type
2211testdata/Builtins.lc 470:61-470:77 Type
2212testdata/Builtins.lc 470:66-470:67 Type
2213testdata/Builtins.lc 470:66-470:77 Type
2214testdata/Builtins.lc 470:71-470:72 Type
2215testdata/Builtins.lc 470:71-470:77 Type
2216testdata/Builtins.lc 470:76-470:77 Type
2217testdata/Builtins.lc 471:1-471:9 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> Float->a
2218testdata/Builtins.lc 471:34-471:57 Type
2219testdata/Builtins.lc 471:34-471:81 Type
2220testdata/Builtins.lc 471:35-471:36 V3
2221testdata/Builtins.lc 471:35-471:38 Type->Type
2222testdata/Builtins.lc 471:37-471:38 Type -> Type->Type
2223testdata/Builtins.lc 471:39-471:48 Nat -> Type->Type
2224testdata/Builtins.lc 471:39-471:50 Type->Type
2225testdata/Builtins.lc 471:39-471:56 Type
2226testdata/Builtins.lc 471:49-471:50 V1
2227testdata/Builtins.lc 471:51-471:56 Type
2228testdata/Builtins.lc 471:61-471:62 Type
2229testdata/Builtins.lc 471:61-471:81 Type
2230testdata/Builtins.lc 471:66-471:67 Type
2231testdata/Builtins.lc 471:66-471:81 Type
2232testdata/Builtins.lc 471:71-471:76 Type
2233testdata/Builtins.lc 471:71-471:81 Type
2234testdata/Builtins.lc 471:80-471:81 Type
2235testdata/Builtins.lc 472:1-472:9 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a -> a -> c->a
2236testdata/Builtins.lc 472:34-472:99 Type
2237testdata/Builtins.lc 472:35-472:36 V5
2238testdata/Builtins.lc 472:35-472:38 Type->Type 2060testdata/Builtins.lc 472:35-472:38 Type->Type
2239testdata/Builtins.lc 472:35-472:56 Type
2240testdata/Builtins.lc 472:37-472:38 Type -> Type->Type 2061testdata/Builtins.lc 472:37-472:38 Type -> Type->Type
2241testdata/Builtins.lc 472:39-472:48 Nat -> Type->Type 2062testdata/Builtins.lc 472:39-472:48 Nat -> Type->Type
2242testdata/Builtins.lc 472:39-472:50 Type->Type 2063testdata/Builtins.lc 472:39-472:50 Type->Type
2243testdata/Builtins.lc 472:39-472:56 Type 2064testdata/Builtins.lc 472:39-472:56 Type
2244testdata/Builtins.lc 472:49-472:50 V3 2065testdata/Builtins.lc 472:49-472:50 V1
2245testdata/Builtins.lc 472:51-472:56 Type 2066testdata/Builtins.lc 472:51-472:56 Type
2246testdata/Builtins.lc 472:58-472:59 V2 2067testdata/Builtins.lc 472:61-472:62 Type
2247testdata/Builtins.lc 472:58-472:61 Type->Type 2068testdata/Builtins.lc 472:61-472:67 Type
2248testdata/Builtins.lc 472:58-472:78 Type 2069testdata/Builtins.lc 472:66-472:67 Type
2249testdata/Builtins.lc 472:58-472:99 Type 2070testdata/Builtins.lc 473:1-473:8 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b
2250testdata/Builtins.lc 472:60-472:61 Type -> Type->Type 2071testdata/Builtins.lc 473:10-473:17 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b
2251testdata/Builtins.lc 472:62-472:71 Nat -> Type->Type 2072testdata/Builtins.lc 473:34-473:75 Type
2252testdata/Builtins.lc 472:62-472:73 Type->Type
2253testdata/Builtins.lc 472:62-472:78 Type
2254testdata/Builtins.lc 472:72-472:73 Nat
2255testdata/Builtins.lc 472:74-472:78 Type
2256testdata/Builtins.lc 472:83-472:84 Type
2257testdata/Builtins.lc 472:83-472:99 Type
2258testdata/Builtins.lc 472:88-472:89 Type
2259testdata/Builtins.lc 472:88-472:99 Type
2260testdata/Builtins.lc 472:93-472:94 Type
2261testdata/Builtins.lc 472:93-472:99 Type
2262testdata/Builtins.lc 472:98-472:99 Type
2263testdata/Builtins.lc 473:1-473:9 {a} -> {b:Nat} -> {c : a ~ VecS Float b} -> a -> a->a
2264testdata/Builtins.lc 473:34-473:53 Type
2265testdata/Builtins.lc 473:34-473:68 Type
2266testdata/Builtins.lc 473:35-473:36 V3
2267testdata/Builtins.lc 473:35-473:38 Type->Type 2073testdata/Builtins.lc 473:35-473:38 Type->Type
2268testdata/Builtins.lc 473:37-473:38 Type -> Type->Type 2074testdata/Builtins.lc 473:35-473:40 Type
2269testdata/Builtins.lc 473:39-473:44 Nat -> Type->Type 2075testdata/Builtins.lc 473:39-473:40 V5
2270testdata/Builtins.lc 473:39-473:46 Type->Type 2076testdata/Builtins.lc 473:42-473:43 V4
2271testdata/Builtins.lc 473:39-473:52 Type 2077testdata/Builtins.lc 473:42-473:45 Type->Type
2272testdata/Builtins.lc 473:45-473:46 V1 2078testdata/Builtins.lc 473:42-473:59 Type
2273testdata/Builtins.lc 473:47-473:52 Type 2079testdata/Builtins.lc 473:42-473:75 Type
2274testdata/Builtins.lc 473:57-473:58 Type 2080testdata/Builtins.lc 473:44-473:45 Type -> Type->Type
2275testdata/Builtins.lc 473:57-473:68 Type 2081testdata/Builtins.lc 473:46-473:55 Nat -> Type->Type
2276testdata/Builtins.lc 473:62-473:63 Type 2082testdata/Builtins.lc 473:46-473:57 Type->Type
2277testdata/Builtins.lc 473:62-473:68 Type 2083testdata/Builtins.lc 473:46-473:59 Type
2278testdata/Builtins.lc 473:67-473:68 Type 2084testdata/Builtins.lc 473:56-473:57 V2
2279testdata/Builtins.lc 474:1-474:10 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> Float -> a->a 2085testdata/Builtins.lc 473:58-473:59 Type
2280testdata/Builtins.lc 474:34-474:57 Type 2086testdata/Builtins.lc 473:64-473:65 Type
2281testdata/Builtins.lc 474:34-474:76 Type 2087testdata/Builtins.lc 473:64-473:75 Type
2282testdata/Builtins.lc 474:35-474:36 V3 2088testdata/Builtins.lc 473:69-473:70 Type
2089testdata/Builtins.lc 473:69-473:75 Type
2090testdata/Builtins.lc 473:74-473:75 Type
2091testdata/Builtins.lc 474:1-474:9 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a->b
2092testdata/Builtins.lc 474:11-474:19 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a->b
2093testdata/Builtins.lc 474:34-474:75 Type
2283testdata/Builtins.lc 474:35-474:38 Type->Type 2094testdata/Builtins.lc 474:35-474:38 Type->Type
2284testdata/Builtins.lc 474:37-474:38 Type -> Type->Type 2095testdata/Builtins.lc 474:35-474:40 Type
2285testdata/Builtins.lc 474:39-474:48 Nat -> Type->Type 2096testdata/Builtins.lc 474:39-474:40 V5
2286testdata/Builtins.lc 474:39-474:50 Type->Type 2097testdata/Builtins.lc 474:42-474:43 V4
2287testdata/Builtins.lc 474:39-474:56 Type 2098testdata/Builtins.lc 474:42-474:45 Type->Type
2288testdata/Builtins.lc 474:49-474:50 V1 2099testdata/Builtins.lc 474:42-474:59 Type
2289testdata/Builtins.lc 474:51-474:56 Type 2100testdata/Builtins.lc 474:42-474:75 Type
2290testdata/Builtins.lc 474:61-474:66 Type 2101testdata/Builtins.lc 474:44-474:45 Type -> Type->Type
2291testdata/Builtins.lc 474:61-474:76 Type 2102testdata/Builtins.lc 474:46-474:55 Nat -> Type->Type
2292testdata/Builtins.lc 474:70-474:71 Type 2103testdata/Builtins.lc 474:46-474:57 Type->Type
2293testdata/Builtins.lc 474:70-474:76 Type 2104testdata/Builtins.lc 474:46-474:59 Type
2294testdata/Builtins.lc 474:75-474:76 Type 2105testdata/Builtins.lc 474:56-474:57 V2
2295testdata/Builtins.lc 475:1-475:15 {a} -> {b:Nat} -> {c : a ~ VecS Float b} -> a -> a -> a->a 2106testdata/Builtins.lc 474:58-474:59 Type
2296testdata/Builtins.lc 475:34-475:53 Type 2107testdata/Builtins.lc 474:64-474:65 Type
2297testdata/Builtins.lc 475:34-475:73 Type 2108testdata/Builtins.lc 474:64-474:75 Type
2298testdata/Builtins.lc 475:35-475:36 V3 2109testdata/Builtins.lc 474:69-474:70 Type
2110testdata/Builtins.lc 474:69-474:75 Type
2111testdata/Builtins.lc 474:74-474:75 Type
2112testdata/Builtins.lc 475:1-475:10 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a->c
2113testdata/Builtins.lc 475:12-475:21 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a->c
2114testdata/Builtins.lc 475:34-475:89 Type
2115testdata/Builtins.lc 475:35-475:36 V5
2299testdata/Builtins.lc 475:35-475:38 Type->Type 2116testdata/Builtins.lc 475:35-475:38 Type->Type
2117testdata/Builtins.lc 475:35-475:56 Type
2300testdata/Builtins.lc 475:37-475:38 Type -> Type->Type 2118testdata/Builtins.lc 475:37-475:38 Type -> Type->Type
2301testdata/Builtins.lc 475:39-475:44 Nat -> Type->Type 2119testdata/Builtins.lc 475:39-475:48 Nat -> Type->Type
2302testdata/Builtins.lc 475:39-475:46 Type->Type 2120testdata/Builtins.lc 475:39-475:50 Type->Type
2303testdata/Builtins.lc 475:39-475:52 Type 2121testdata/Builtins.lc 475:39-475:56 Type
2304testdata/Builtins.lc 475:45-475:46 V1 2122testdata/Builtins.lc 475:49-475:50 V3
2305testdata/Builtins.lc 475:47-475:52 Type 2123testdata/Builtins.lc 475:51-475:56 Type
2306testdata/Builtins.lc 475:57-475:58 Type 2124testdata/Builtins.lc 475:58-475:59 V2
2307testdata/Builtins.lc 475:57-475:73 Type 2125testdata/Builtins.lc 475:58-475:61 Type->Type
2308testdata/Builtins.lc 475:62-475:63 Type 2126testdata/Builtins.lc 475:58-475:78 Type
2309testdata/Builtins.lc 475:62-475:73 Type 2127testdata/Builtins.lc 475:58-475:89 Type
2310testdata/Builtins.lc 475:67-475:68 Type 2128testdata/Builtins.lc 475:60-475:61 Type -> Type->Type
2311testdata/Builtins.lc 475:67-475:73 Type 2129testdata/Builtins.lc 475:62-475:71 Nat -> Type->Type
2312testdata/Builtins.lc 475:72-475:73 Type 2130testdata/Builtins.lc 475:62-475:73 Type->Type
2313testdata/Builtins.lc 476:1-476:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> Float -> Float -> a->a 2131testdata/Builtins.lc 475:62-475:78 Type
2314testdata/Builtins.lc 476:34-476:57 Type 2132testdata/Builtins.lc 475:72-475:73 Nat
2315testdata/Builtins.lc 476:34-476:85 Type 2133testdata/Builtins.lc 475:74-475:78 Type
2316testdata/Builtins.lc 476:35-476:36 V3 2134testdata/Builtins.lc 475:83-475:84 Type
2317testdata/Builtins.lc 476:35-476:38 Type->Type 2135testdata/Builtins.lc 475:83-475:89 Type
2318testdata/Builtins.lc 476:37-476:38 Type -> Type->Type 2136testdata/Builtins.lc 475:88-475:89 Type
2319testdata/Builtins.lc 476:39-476:48 Nat -> Type->Type 2137testdata/Builtins.lc 476:1-476:8 {a} -> {b} -> {c:Nat} -> {d : Signed a} -> {e : b ~ VecScalar c a} -> b->b
2320testdata/Builtins.lc 476:39-476:50 Type->Type 2138testdata/Builtins.lc 476:10-476:18 {a} -> {b} -> {c:Nat} -> {d : Signed a} -> {e : b ~ VecScalar c a} -> b->b
2321testdata/Builtins.lc 476:39-476:56 Type 2139testdata/Builtins.lc 476:34-476:73 Type
2322testdata/Builtins.lc 476:49-476:50 V1 2140testdata/Builtins.lc 476:35-476:41 Type->Type
2323testdata/Builtins.lc 476:51-476:56 Type 2141testdata/Builtins.lc 476:35-476:43 Type
2324testdata/Builtins.lc 476:61-476:66 Type 2142testdata/Builtins.lc 476:42-476:43 V5
2325testdata/Builtins.lc 476:61-476:85 Type 2143testdata/Builtins.lc 476:45-476:46 V4
2326testdata/Builtins.lc 476:70-476:75 Type 2144testdata/Builtins.lc 476:45-476:48 Type->Type
2327testdata/Builtins.lc 476:70-476:85 Type 2145testdata/Builtins.lc 476:45-476:62 Type
2328testdata/Builtins.lc 476:79-476:80 Type 2146testdata/Builtins.lc 476:45-476:73 Type
2329testdata/Builtins.lc 476:79-476:85 Type 2147testdata/Builtins.lc 476:47-476:48 Type -> Type->Type
2330testdata/Builtins.lc 476:84-476:85 Type 2148testdata/Builtins.lc 476:49-476:58 Nat -> Type->Type
2331testdata/Builtins.lc 479:1-479:19 {a:Nat} -> VecScalar a Float -> VecScalar a Int 2149testdata/Builtins.lc 476:49-476:60 Type->Type
2332testdata/Builtins.lc 479:34-479:43 Nat -> Type->Type 2150testdata/Builtins.lc 476:49-476:62 Type
2333testdata/Builtins.lc 479:34-479:45 Type->Type 2151testdata/Builtins.lc 476:59-476:60 V2
2334testdata/Builtins.lc 479:34-479:51 Type 2152testdata/Builtins.lc 476:61-476:62 Type
2335testdata/Builtins.lc 479:34-479:70 Type 2153testdata/Builtins.lc 476:67-476:68 Type
2336testdata/Builtins.lc 479:44-479:45 V1 2154testdata/Builtins.lc 476:67-476:73 Type
2337testdata/Builtins.lc 479:46-479:51 Type 2155testdata/Builtins.lc 476:72-476:73 Type
2338testdata/Builtins.lc 479:55-479:64 Nat -> Type->Type 2156testdata/Builtins.lc 477:1-477:9 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> Tuple2 a a
2339testdata/Builtins.lc 479:55-479:66 Type->Type 2157testdata/Builtins.lc 477:34-477:57 Type
2340testdata/Builtins.lc 479:55-479:70 Type 2158testdata/Builtins.lc 477:34-477:72 Type
2341testdata/Builtins.lc 479:65-479:66 Nat 2159testdata/Builtins.lc 477:35-477:36 V3
2342testdata/Builtins.lc 479:67-479:70 Type 2160testdata/Builtins.lc 477:35-477:38 Type->Type
2343testdata/Builtins.lc 480:1-480:20 {a:Nat} -> VecScalar a Float -> VecScalar a Word 2161testdata/Builtins.lc 477:37-477:38 Type -> Type->Type
2344testdata/Builtins.lc 480:34-480:43 Nat -> Type->Type 2162testdata/Builtins.lc 477:39-477:48 Nat -> Type->Type
2345testdata/Builtins.lc 480:34-480:45 Type->Type 2163testdata/Builtins.lc 477:39-477:50 Type->Type
2346testdata/Builtins.lc 480:34-480:51 Type 2164testdata/Builtins.lc 477:39-477:56 Type
2347testdata/Builtins.lc 480:34-480:71 Type 2165testdata/Builtins.lc 477:49-477:50 V1
2348testdata/Builtins.lc 480:44-480:45 V1 2166testdata/Builtins.lc 477:51-477:56 Type
2349testdata/Builtins.lc 480:46-480:51 Type 2167testdata/Builtins.lc 477:61-477:62 Type
2350testdata/Builtins.lc 480:55-480:64 Nat -> Type->Type 2168testdata/Builtins.lc 477:61-477:72 Type
2351testdata/Builtins.lc 480:55-480:66 Type->Type 2169testdata/Builtins.lc 477:66-477:72 Type
2352testdata/Builtins.lc 480:55-480:71 Type 2170testdata/Builtins.lc 477:67-477:68 Type
2353testdata/Builtins.lc 480:65-480:66 Nat 2171testdata/Builtins.lc 477:70-477:71 Type
2354testdata/Builtins.lc 480:67-480:71 Type 2172testdata/Builtins.lc 478:1-478:10 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b -> b->b
2355testdata/Builtins.lc 481:1-481:19 {a:Nat} -> VecScalar a Int -> VecScalar a Float 2173testdata/Builtins.lc 478:34-478:80 Type
2356testdata/Builtins.lc 481:34-481:43 Nat -> Type->Type 2174testdata/Builtins.lc 478:35-478:38 Type->Type
2357testdata/Builtins.lc 481:34-481:45 Type->Type 2175testdata/Builtins.lc 478:35-478:40 Type
2358testdata/Builtins.lc 481:34-481:49 Type 2176testdata/Builtins.lc 478:39-478:40 V5
2359testdata/Builtins.lc 481:34-481:72 Type 2177testdata/Builtins.lc 478:42-478:43 V4
2360testdata/Builtins.lc 481:44-481:45 V1 2178testdata/Builtins.lc 478:42-478:45 Type->Type
2361testdata/Builtins.lc 481:46-481:49 Type 2179testdata/Builtins.lc 478:42-478:59 Type
2362testdata/Builtins.lc 481:55-481:64 Nat -> Type->Type 2180testdata/Builtins.lc 478:42-478:80 Type
2363testdata/Builtins.lc 481:55-481:66 Type->Type 2181testdata/Builtins.lc 478:44-478:45 Type -> Type->Type
2364testdata/Builtins.lc 481:55-481:72 Type 2182testdata/Builtins.lc 478:46-478:55 Nat -> Type->Type
2365testdata/Builtins.lc 481:65-481:66 Nat 2183testdata/Builtins.lc 478:46-478:57 Type->Type
2366testdata/Builtins.lc 481:67-481:72 Type 2184testdata/Builtins.lc 478:46-478:59 Type
2367testdata/Builtins.lc 482:1-482:20 {a:Nat} -> VecScalar a Word -> VecScalar a Float 2185testdata/Builtins.lc 478:56-478:57 V2
2368testdata/Builtins.lc 482:34-482:43 Nat -> Type->Type 2186testdata/Builtins.lc 478:58-478:59 Type
2369testdata/Builtins.lc 482:34-482:45 Type->Type 2187testdata/Builtins.lc 478:64-478:65 Type
2370testdata/Builtins.lc 482:34-482:50 Type 2188testdata/Builtins.lc 478:64-478:80 Type
2371testdata/Builtins.lc 482:34-482:72 Type 2189testdata/Builtins.lc 478:69-478:70 Type
2372testdata/Builtins.lc 482:44-482:45 V1 2190testdata/Builtins.lc 478:69-478:80 Type
2373testdata/Builtins.lc 482:46-482:50 Type 2191testdata/Builtins.lc 478:74-478:75 Type
2374testdata/Builtins.lc 482:55-482:64 Nat -> Type->Type 2192testdata/Builtins.lc 478:74-478:80 Type
2375testdata/Builtins.lc 482:55-482:66 Type->Type 2193testdata/Builtins.lc 478:79-478:80 Type
2376testdata/Builtins.lc 482:55-482:72 Type 2194testdata/Builtins.lc 479:1-479:11 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a -> a->b
2377testdata/Builtins.lc 482:65-482:66 Nat 2195testdata/Builtins.lc 479:34-479:80 Type
2378testdata/Builtins.lc 482:67-482:72 Type 2196testdata/Builtins.lc 479:35-479:38 Type->Type
2379testdata/Builtins.lc 484:1-484:11 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->Float 2197testdata/Builtins.lc 479:35-479:40 Type
2198testdata/Builtins.lc 479:39-479:40 V5
2199testdata/Builtins.lc 479:42-479:43 V4
2200testdata/Builtins.lc 479:42-479:45 Type->Type
2201testdata/Builtins.lc 479:42-479:59 Type
2202testdata/Builtins.lc 479:42-479:80 Type
2203testdata/Builtins.lc 479:44-479:45 Type -> Type->Type
2204testdata/Builtins.lc 479:46-479:55 Nat -> Type->Type
2205testdata/Builtins.lc 479:46-479:57 Type->Type
2206testdata/Builtins.lc 479:46-479:59 Type
2207testdata/Builtins.lc 479:56-479:57 V2
2208testdata/Builtins.lc 479:58-479:59 Type
2209testdata/Builtins.lc 479:64-479:65 Type
2210testdata/Builtins.lc 479:64-479:80 Type
2211testdata/Builtins.lc 479:69-479:70 Type
2212testdata/Builtins.lc 479:69-479:80 Type
2213testdata/Builtins.lc 479:74-479:75 Type
2214testdata/Builtins.lc 479:74-479:80 Type
2215testdata/Builtins.lc 479:79-479:80 Type
2216testdata/Builtins.lc 480:1-480:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a
2217testdata/Builtins.lc 480:34-480:57 Type
2218testdata/Builtins.lc 480:34-480:77 Type
2219testdata/Builtins.lc 480:35-480:36 V3
2220testdata/Builtins.lc 480:35-480:38 Type->Type
2221testdata/Builtins.lc 480:37-480:38 Type -> Type->Type
2222testdata/Builtins.lc 480:39-480:48 Nat -> Type->Type
2223testdata/Builtins.lc 480:39-480:50 Type->Type
2224testdata/Builtins.lc 480:39-480:56 Type
2225testdata/Builtins.lc 480:49-480:50 V1
2226testdata/Builtins.lc 480:51-480:56 Type
2227testdata/Builtins.lc 480:61-480:62 Type
2228testdata/Builtins.lc 480:61-480:77 Type
2229testdata/Builtins.lc 480:66-480:67 Type
2230testdata/Builtins.lc 480:66-480:77 Type
2231testdata/Builtins.lc 480:71-480:72 Type
2232testdata/Builtins.lc 480:71-480:77 Type
2233testdata/Builtins.lc 480:76-480:77 Type
2234testdata/Builtins.lc 481:1-481:9 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> Float->a
2235testdata/Builtins.lc 481:34-481:57 Type
2236testdata/Builtins.lc 481:34-481:81 Type
2237testdata/Builtins.lc 481:35-481:36 V3
2238testdata/Builtins.lc 481:35-481:38 Type->Type
2239testdata/Builtins.lc 481:37-481:38 Type -> Type->Type
2240testdata/Builtins.lc 481:39-481:48 Nat -> Type->Type
2241testdata/Builtins.lc 481:39-481:50 Type->Type
2242testdata/Builtins.lc 481:39-481:56 Type
2243testdata/Builtins.lc 481:49-481:50 V1
2244testdata/Builtins.lc 481:51-481:56 Type
2245testdata/Builtins.lc 481:61-481:62 Type
2246testdata/Builtins.lc 481:61-481:81 Type
2247testdata/Builtins.lc 481:66-481:67 Type
2248testdata/Builtins.lc 481:66-481:81 Type
2249testdata/Builtins.lc 481:71-481:76 Type
2250testdata/Builtins.lc 481:71-481:81 Type
2251testdata/Builtins.lc 481:80-481:81 Type
2252testdata/Builtins.lc 482:1-482:9 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a -> a -> c->a
2253testdata/Builtins.lc 482:34-482:99 Type
2254testdata/Builtins.lc 482:35-482:36 V5
2255testdata/Builtins.lc 482:35-482:38 Type->Type
2256testdata/Builtins.lc 482:35-482:56 Type
2257testdata/Builtins.lc 482:37-482:38 Type -> Type->Type
2258testdata/Builtins.lc 482:39-482:48 Nat -> Type->Type
2259testdata/Builtins.lc 482:39-482:50 Type->Type
2260testdata/Builtins.lc 482:39-482:56 Type
2261testdata/Builtins.lc 482:49-482:50 V3
2262testdata/Builtins.lc 482:51-482:56 Type
2263testdata/Builtins.lc 482:58-482:59 V2
2264testdata/Builtins.lc 482:58-482:61 Type->Type
2265testdata/Builtins.lc 482:58-482:78 Type
2266testdata/Builtins.lc 482:58-482:99 Type
2267testdata/Builtins.lc 482:60-482:61 Type -> Type->Type
2268testdata/Builtins.lc 482:62-482:71 Nat -> Type->Type
2269testdata/Builtins.lc 482:62-482:73 Type->Type
2270testdata/Builtins.lc 482:62-482:78 Type
2271testdata/Builtins.lc 482:72-482:73 Nat
2272testdata/Builtins.lc 482:74-482:78 Type
2273testdata/Builtins.lc 482:83-482:84 Type
2274testdata/Builtins.lc 482:83-482:99 Type
2275testdata/Builtins.lc 482:88-482:89 Type
2276testdata/Builtins.lc 482:88-482:99 Type
2277testdata/Builtins.lc 482:93-482:94 Type
2278testdata/Builtins.lc 482:93-482:99 Type
2279testdata/Builtins.lc 482:98-482:99 Type
2280testdata/Builtins.lc 483:1-483:9 {a} -> {b:Nat} -> {c : a ~ VecS Float b} -> a -> a->a
2281testdata/Builtins.lc 483:34-483:53 Type
2282testdata/Builtins.lc 483:34-483:68 Type
2283testdata/Builtins.lc 483:35-483:36 V3
2284testdata/Builtins.lc 483:35-483:38 Type->Type
2285testdata/Builtins.lc 483:37-483:38 Type -> Type->Type
2286testdata/Builtins.lc 483:39-483:44 Nat -> Type->Type
2287testdata/Builtins.lc 483:39-483:46 Type->Type
2288testdata/Builtins.lc 483:39-483:52 Type
2289testdata/Builtins.lc 483:45-483:46 V1
2290testdata/Builtins.lc 483:47-483:52 Type
2291testdata/Builtins.lc 483:57-483:58 Type
2292testdata/Builtins.lc 483:57-483:68 Type
2293testdata/Builtins.lc 483:62-483:63 Type
2294testdata/Builtins.lc 483:62-483:68 Type
2295testdata/Builtins.lc 483:67-483:68 Type
2296testdata/Builtins.lc 484:1-484:10 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> Float -> a->a
2380testdata/Builtins.lc 484:34-484:57 Type 2297testdata/Builtins.lc 484:34-484:57 Type
2381testdata/Builtins.lc 484:34-484:71 Type 2298testdata/Builtins.lc 484:34-484:76 Type
2382testdata/Builtins.lc 484:35-484:36 V3 2299testdata/Builtins.lc 484:35-484:36 V3
2383testdata/Builtins.lc 484:35-484:38 Type->Type 2300testdata/Builtins.lc 484:35-484:38 Type->Type
2384testdata/Builtins.lc 484:37-484:38 Type -> Type->Type 2301testdata/Builtins.lc 484:37-484:38 Type -> Type->Type
@@ -2387,30 +2304,33 @@ testdata/Builtins.lc 484:39-484:50 Type->Type
2387testdata/Builtins.lc 484:39-484:56 Type 2304testdata/Builtins.lc 484:39-484:56 Type
2388testdata/Builtins.lc 484:49-484:50 V1 2305testdata/Builtins.lc 484:49-484:50 V1
2389testdata/Builtins.lc 484:51-484:56 Type 2306testdata/Builtins.lc 484:51-484:56 Type
2390testdata/Builtins.lc 484:61-484:62 Type 2307testdata/Builtins.lc 484:61-484:66 Type
2391testdata/Builtins.lc 484:61-484:71 Type 2308testdata/Builtins.lc 484:61-484:76 Type
2392testdata/Builtins.lc 484:66-484:71 Type 2309testdata/Builtins.lc 484:70-484:71 Type
2393testdata/Builtins.lc 485:1-485:13 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->Float 2310testdata/Builtins.lc 484:70-484:76 Type
2394testdata/Builtins.lc 485:15-485:22 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->Float 2311testdata/Builtins.lc 484:75-484:76 Type
2395testdata/Builtins.lc 485:34-485:57 Type 2312testdata/Builtins.lc 485:1-485:15 {a} -> {b:Nat} -> {c : a ~ VecS Float b} -> a -> a -> a->a
2396testdata/Builtins.lc 485:34-485:76 Type 2313testdata/Builtins.lc 485:34-485:53 Type
2314testdata/Builtins.lc 485:34-485:73 Type
2397testdata/Builtins.lc 485:35-485:36 V3 2315testdata/Builtins.lc 485:35-485:36 V3
2398testdata/Builtins.lc 485:35-485:38 Type->Type 2316testdata/Builtins.lc 485:35-485:38 Type->Type
2399testdata/Builtins.lc 485:37-485:38 Type -> Type->Type 2317testdata/Builtins.lc 485:37-485:38 Type -> Type->Type
2400testdata/Builtins.lc 485:39-485:48 Nat -> Type->Type 2318testdata/Builtins.lc 485:39-485:44 Nat -> Type->Type
2401testdata/Builtins.lc 485:39-485:50 Type->Type 2319testdata/Builtins.lc 485:39-485:46 Type->Type
2402testdata/Builtins.lc 485:39-485:56 Type 2320testdata/Builtins.lc 485:39-485:52 Type
2403testdata/Builtins.lc 485:49-485:50 V1 2321testdata/Builtins.lc 485:45-485:46 V1
2404testdata/Builtins.lc 485:51-485:56 Type 2322testdata/Builtins.lc 485:47-485:52 Type
2405testdata/Builtins.lc 485:61-485:62 Type 2323testdata/Builtins.lc 485:57-485:58 Type
2406testdata/Builtins.lc 485:61-485:76 Type 2324testdata/Builtins.lc 485:57-485:73 Type
2407testdata/Builtins.lc 485:66-485:67 Type 2325testdata/Builtins.lc 485:62-485:63 Type
2408testdata/Builtins.lc 485:66-485:76 Type 2326testdata/Builtins.lc 485:62-485:73 Type
2409testdata/Builtins.lc 485:71-485:76 Type 2327testdata/Builtins.lc 485:67-485:68 Type
2410testdata/Builtins.lc 486:1-486:10 {a} -> {b : a ~ VecS Float 3} -> a -> a->a 2328testdata/Builtins.lc 485:67-485:73 Type
2329testdata/Builtins.lc 485:72-485:73 Type
2330testdata/Builtins.lc 486:1-486:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> Float -> Float -> a->a
2411testdata/Builtins.lc 486:34-486:57 Type 2331testdata/Builtins.lc 486:34-486:57 Type
2412testdata/Builtins.lc 486:34-486:72 Type 2332testdata/Builtins.lc 486:34-486:85 Type
2413testdata/Builtins.lc 486:35-486:36 V1 2333testdata/Builtins.lc 486:35-486:36 V3
2414testdata/Builtins.lc 486:35-486:38 Type->Type 2334testdata/Builtins.lc 486:35-486:38 Type->Type
2415testdata/Builtins.lc 486:37-486:38 Type -> Type->Type 2335testdata/Builtins.lc 486:37-486:38 Type -> Type->Type
2416testdata/Builtins.lc 486:39-486:48 Nat -> Type->Type 2336testdata/Builtins.lc 486:39-486:48 Nat -> Type->Type
@@ -2418,372 +2338,469 @@ testdata/Builtins.lc 486:39-486:50 Type->Type
2418testdata/Builtins.lc 486:39-486:56 Type 2338testdata/Builtins.lc 486:39-486:56 Type
2419testdata/Builtins.lc 486:49-486:50 V1 2339testdata/Builtins.lc 486:49-486:50 V1
2420testdata/Builtins.lc 486:51-486:56 Type 2340testdata/Builtins.lc 486:51-486:56 Type
2421testdata/Builtins.lc 486:61-486:62 Type 2341testdata/Builtins.lc 486:61-486:66 Type
2422testdata/Builtins.lc 486:61-486:72 Type 2342testdata/Builtins.lc 486:61-486:85 Type
2423testdata/Builtins.lc 486:66-486:67 Type 2343testdata/Builtins.lc 486:70-486:75 Type
2424testdata/Builtins.lc 486:66-486:72 Type 2344testdata/Builtins.lc 486:70-486:85 Type
2425testdata/Builtins.lc 486:71-486:72 Type 2345testdata/Builtins.lc 486:79-486:80 Type
2426testdata/Builtins.lc 487:1-487:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 2346testdata/Builtins.lc 486:79-486:85 Type
2427testdata/Builtins.lc 487:34-487:57 Type 2347testdata/Builtins.lc 486:84-486:85 Type
2428testdata/Builtins.lc 487:34-487:67 Type 2348testdata/Builtins.lc 489:1-489:19 {a:Nat} -> VecScalar a Float -> VecScalar a Int
2429testdata/Builtins.lc 487:35-487:36 V3 2349testdata/Builtins.lc 489:34-489:43 Nat -> Type->Type
2430testdata/Builtins.lc 487:35-487:38 Type->Type 2350testdata/Builtins.lc 489:34-489:45 Type->Type
2431testdata/Builtins.lc 487:37-487:38 Type -> Type->Type 2351testdata/Builtins.lc 489:34-489:51 Type
2432testdata/Builtins.lc 487:39-487:48 Nat -> Type->Type 2352testdata/Builtins.lc 489:34-489:70 Type
2433testdata/Builtins.lc 487:39-487:50 Type->Type 2353testdata/Builtins.lc 489:44-489:45 V1
2434testdata/Builtins.lc 487:39-487:56 Type 2354testdata/Builtins.lc 489:46-489:51 Type
2435testdata/Builtins.lc 487:49-487:50 V1 2355testdata/Builtins.lc 489:55-489:64 Nat -> Type->Type
2436testdata/Builtins.lc 487:51-487:56 Type 2356testdata/Builtins.lc 489:55-489:66 Type->Type
2437testdata/Builtins.lc 487:61-487:62 Type 2357testdata/Builtins.lc 489:55-489:70 Type
2438testdata/Builtins.lc 487:61-487:67 Type 2358testdata/Builtins.lc 489:65-489:66 Nat
2439testdata/Builtins.lc 487:66-487:67 Type 2359testdata/Builtins.lc 489:67-489:70 Type
2440testdata/Builtins.lc 488:1-488:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a 2360testdata/Builtins.lc 490:1-490:20 {a:Nat} -> VecScalar a Float -> VecScalar a Word
2441testdata/Builtins.lc 488:18-488:29 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a 2361testdata/Builtins.lc 490:34-490:43 Nat -> Type->Type
2442testdata/Builtins.lc 488:34-488:57 Type 2362testdata/Builtins.lc 490:34-490:45 Type->Type
2443testdata/Builtins.lc 488:34-488:77 Type 2363testdata/Builtins.lc 490:34-490:51 Type
2444testdata/Builtins.lc 488:35-488:36 V3 2364testdata/Builtins.lc 490:34-490:71 Type
2445testdata/Builtins.lc 488:35-488:38 Type->Type 2365testdata/Builtins.lc 490:44-490:45 V1
2446testdata/Builtins.lc 488:37-488:38 Type -> Type->Type 2366testdata/Builtins.lc 490:46-490:51 Type
2447testdata/Builtins.lc 488:39-488:48 Nat -> Type->Type 2367testdata/Builtins.lc 490:55-490:64 Nat -> Type->Type
2448testdata/Builtins.lc 488:39-488:50 Type->Type 2368testdata/Builtins.lc 490:55-490:66 Type->Type
2449testdata/Builtins.lc 488:39-488:56 Type 2369testdata/Builtins.lc 490:55-490:71 Type
2450testdata/Builtins.lc 488:49-488:50 V1 2370testdata/Builtins.lc 490:65-490:66 Nat
2451testdata/Builtins.lc 488:51-488:56 Type 2371testdata/Builtins.lc 490:67-490:71 Type
2452testdata/Builtins.lc 488:61-488:62 Type 2372testdata/Builtins.lc 491:1-491:19 {a:Nat} -> VecScalar a Int -> VecScalar a Float
2453testdata/Builtins.lc 488:61-488:77 Type 2373testdata/Builtins.lc 491:34-491:43 Nat -> Type->Type
2454testdata/Builtins.lc 488:66-488:67 Type 2374testdata/Builtins.lc 491:34-491:45 Type->Type
2455testdata/Builtins.lc 488:66-488:77 Type 2375testdata/Builtins.lc 491:34-491:49 Type
2456testdata/Builtins.lc 488:71-488:72 Type 2376testdata/Builtins.lc 491:34-491:72 Type
2457testdata/Builtins.lc 488:71-488:77 Type 2377testdata/Builtins.lc 491:44-491:45 V1
2458testdata/Builtins.lc 488:76-488:77 Type 2378testdata/Builtins.lc 491:46-491:49 Type
2459testdata/Builtins.lc 489:1-489:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a 2379testdata/Builtins.lc 491:55-491:64 Nat -> Type->Type
2460testdata/Builtins.lc 489:34-489:57 Type 2380testdata/Builtins.lc 491:55-491:66 Type->Type
2461testdata/Builtins.lc 489:34-489:72 Type 2381testdata/Builtins.lc 491:55-491:72 Type
2462testdata/Builtins.lc 489:35-489:36 V3 2382testdata/Builtins.lc 491:65-491:66 Nat
2463testdata/Builtins.lc 489:35-489:38 Type->Type 2383testdata/Builtins.lc 491:67-491:72 Type
2464testdata/Builtins.lc 489:37-489:38 Type -> Type->Type 2384testdata/Builtins.lc 492:1-492:20 {a:Nat} -> VecScalar a Word -> VecScalar a Float
2465testdata/Builtins.lc 489:39-489:48 Nat -> Type->Type 2385testdata/Builtins.lc 492:34-492:43 Nat -> Type->Type
2466testdata/Builtins.lc 489:39-489:50 Type->Type 2386testdata/Builtins.lc 492:34-492:45 Type->Type
2467testdata/Builtins.lc 489:39-489:56 Type 2387testdata/Builtins.lc 492:34-492:50 Type
2468testdata/Builtins.lc 489:49-489:50 V1 2388testdata/Builtins.lc 492:34-492:72 Type
2469testdata/Builtins.lc 489:51-489:56 Type 2389testdata/Builtins.lc 492:44-492:45 V1
2470testdata/Builtins.lc 489:61-489:62 Type 2390testdata/Builtins.lc 492:46-492:50 Type
2471testdata/Builtins.lc 489:61-489:72 Type 2391testdata/Builtins.lc 492:55-492:64 Nat -> Type->Type
2472testdata/Builtins.lc 489:66-489:67 Type 2392testdata/Builtins.lc 492:55-492:66 Type->Type
2473testdata/Builtins.lc 489:66-489:72 Type 2393testdata/Builtins.lc 492:55-492:72 Type
2474testdata/Builtins.lc 489:71-489:72 Type 2394testdata/Builtins.lc 492:65-492:66 Nat
2475testdata/Builtins.lc 491:1-491:14 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> Mat b a c 2395testdata/Builtins.lc 492:67-492:72 Type
2476testdata/Builtins.lc 491:34-491:37 Nat -> Nat -> Type->Type 2396testdata/Builtins.lc 494:1-494:11 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->Float
2477testdata/Builtins.lc 491:34-491:39 Nat -> Type->Type 2397testdata/Builtins.lc 494:34-494:57 Type
2478testdata/Builtins.lc 491:34-491:41 Type->Type 2398testdata/Builtins.lc 494:34-494:71 Type
2479testdata/Builtins.lc 491:34-491:43 Type 2399testdata/Builtins.lc 494:35-494:36 V3
2480testdata/Builtins.lc 491:34-491:56 Type 2400testdata/Builtins.lc 494:35-494:38 Type->Type
2481testdata/Builtins.lc 491:38-491:39 V5 2401testdata/Builtins.lc 494:37-494:38 Type -> Type->Type
2482testdata/Builtins.lc 491:40-491:41 V3 2402testdata/Builtins.lc 494:39-494:48 Nat -> Type->Type
2483testdata/Builtins.lc 491:42-491:43 V1 2403testdata/Builtins.lc 494:39-494:50 Type->Type
2484testdata/Builtins.lc 491:47-491:50 Nat -> Nat -> Type->Type 2404testdata/Builtins.lc 494:39-494:56 Type
2485testdata/Builtins.lc 491:47-491:52 Nat -> Type->Type 2405testdata/Builtins.lc 494:49-494:50 V1
2486testdata/Builtins.lc 491:47-491:54 Type->Type 2406testdata/Builtins.lc 494:51-494:56 Type
2487testdata/Builtins.lc 491:47-491:56 Type 2407testdata/Builtins.lc 494:61-494:62 Type
2488testdata/Builtins.lc 491:51-491:52 Nat 2408testdata/Builtins.lc 494:61-494:71 Type
2489testdata/Builtins.lc 491:53-491:54 Nat 2409testdata/Builtins.lc 494:66-494:71 Type
2490testdata/Builtins.lc 491:55-491:56 Type 2410testdata/Builtins.lc 495:1-495:13 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->Float
2491testdata/Builtins.lc 492:1-492:16 {a:Nat} -> {b} -> Mat a a b -> Float 2411testdata/Builtins.lc 495:15-495:22 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->Float
2492testdata/Builtins.lc 492:34-492:37 Nat -> Nat -> Type->Type 2412testdata/Builtins.lc 495:34-495:57 Type
2493testdata/Builtins.lc 492:34-492:39 Nat -> Type->Type 2413testdata/Builtins.lc 495:34-495:76 Type
2494testdata/Builtins.lc 492:34-492:41 Type->Type 2414testdata/Builtins.lc 495:35-495:36 V3
2495testdata/Builtins.lc 492:34-492:43 Type 2415testdata/Builtins.lc 495:35-495:38 Type->Type
2496testdata/Builtins.lc 492:34-492:52 Type 2416testdata/Builtins.lc 495:37-495:38 Type -> Type->Type
2497testdata/Builtins.lc 492:38-492:39 V3 2417testdata/Builtins.lc 495:39-495:48 Nat -> Type->Type
2498testdata/Builtins.lc 492:40-492:41 Nat 2418testdata/Builtins.lc 495:39-495:50 Type->Type
2499testdata/Builtins.lc 492:42-492:43 V1 2419testdata/Builtins.lc 495:39-495:56 Type
2500testdata/Builtins.lc 492:47-492:52 Type 2420testdata/Builtins.lc 495:49-495:50 V1
2501testdata/Builtins.lc 493:1-493:12 {a:Nat} -> {b} -> Mat a a b -> Mat a a b 2421testdata/Builtins.lc 495:51-495:56 Type
2502testdata/Builtins.lc 493:34-493:37 Nat -> Nat -> Type->Type 2422testdata/Builtins.lc 495:61-495:62 Type
2503testdata/Builtins.lc 493:34-493:39 Nat -> Type->Type 2423testdata/Builtins.lc 495:61-495:76 Type
2504testdata/Builtins.lc 493:34-493:41 Type->Type
2505testdata/Builtins.lc 493:34-493:43 Type
2506testdata/Builtins.lc 493:34-493:56 Type
2507testdata/Builtins.lc 493:38-493:39 V3
2508testdata/Builtins.lc 493:40-493:41 Nat
2509testdata/Builtins.lc 493:42-493:43 V1
2510testdata/Builtins.lc 493:47-493:50 Nat -> Nat -> Type->Type
2511testdata/Builtins.lc 493:47-493:52 Nat -> Type->Type
2512testdata/Builtins.lc 493:47-493:54 Type->Type
2513testdata/Builtins.lc 493:47-493:56 Type
2514testdata/Builtins.lc 493:51-493:52 Nat
2515testdata/Builtins.lc 493:53-493:54 Nat
2516testdata/Builtins.lc 493:55-493:56 Type
2517testdata/Builtins.lc 494:1-494:17 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> VecS b c -> Mat c a b
2518testdata/Builtins.lc 494:34-494:37 Nat -> Type->Type
2519testdata/Builtins.lc 494:34-494:39 Type->Type
2520testdata/Builtins.lc 494:34-494:41 Type
2521testdata/Builtins.lc 494:34-494:69 Type
2522testdata/Builtins.lc 494:38-494:39 V5
2523testdata/Builtins.lc 494:40-494:41 V3
2524testdata/Builtins.lc 494:47-494:50 Nat -> Type->Type
2525testdata/Builtins.lc 494:47-494:52 Type->Type
2526testdata/Builtins.lc 494:47-494:54 Type
2527testdata/Builtins.lc 494:47-494:69 Type
2528testdata/Builtins.lc 494:51-494:52 V2
2529testdata/Builtins.lc 494:53-494:54 Type
2530testdata/Builtins.lc 494:60-494:63 Nat -> Nat -> Type->Type
2531testdata/Builtins.lc 494:60-494:65 Nat -> Type->Type
2532testdata/Builtins.lc 494:60-494:67 Type->Type
2533testdata/Builtins.lc 494:60-494:69 Type
2534testdata/Builtins.lc 494:64-494:65 Nat
2535testdata/Builtins.lc 494:66-494:67 Nat
2536testdata/Builtins.lc 494:68-494:69 Type
2537testdata/Builtins.lc 495:1-495:14 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> VecS c b -> VecS c a
2538testdata/Builtins.lc 495:34-495:37 Nat -> Nat -> Type->Type
2539testdata/Builtins.lc 495:34-495:39 Nat -> Type->Type
2540testdata/Builtins.lc 495:34-495:41 Type->Type
2541testdata/Builtins.lc 495:34-495:43 Type
2542testdata/Builtins.lc 495:34-495:67 Type
2543testdata/Builtins.lc 495:38-495:39 V5
2544testdata/Builtins.lc 495:40-495:41 V3
2545testdata/Builtins.lc 495:42-495:43 V1
2546testdata/Builtins.lc 495:47-495:50 Nat -> Type->Type
2547testdata/Builtins.lc 495:47-495:52 Type->Type
2548testdata/Builtins.lc 495:47-495:54 Type
2549testdata/Builtins.lc 495:47-495:67 Type
2550testdata/Builtins.lc 495:51-495:52 Nat
2551testdata/Builtins.lc 495:53-495:54 Type
2552testdata/Builtins.lc 495:60-495:63 Nat -> Type->Type
2553testdata/Builtins.lc 495:60-495:65 Type->Type
2554testdata/Builtins.lc 495:60-495:67 Type
2555testdata/Builtins.lc 495:64-495:65 Nat
2556testdata/Builtins.lc 495:66-495:67 Type 2424testdata/Builtins.lc 495:66-495:67 Type
2557testdata/Builtins.lc 496:1-496:14 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> Mat a c b -> VecS b c 2425testdata/Builtins.lc 495:66-495:76 Type
2558testdata/Builtins.lc 496:34-496:37 Nat -> Type->Type 2426testdata/Builtins.lc 495:71-495:76 Type
2559testdata/Builtins.lc 496:34-496:39 Type->Type 2427testdata/Builtins.lc 496:1-496:10 {a} -> {b : a ~ VecS Float 3} -> a -> a->a
2560testdata/Builtins.lc 496:34-496:41 Type 2428testdata/Builtins.lc 496:34-496:57 Type
2561testdata/Builtins.lc 496:34-496:67 Type 2429testdata/Builtins.lc 496:34-496:72 Type
2562testdata/Builtins.lc 496:38-496:39 V5 2430testdata/Builtins.lc 496:35-496:36 V1
2563testdata/Builtins.lc 496:40-496:41 V3 2431testdata/Builtins.lc 496:35-496:38 Type->Type
2564testdata/Builtins.lc 496:47-496:50 Nat -> Nat -> Type->Type 2432testdata/Builtins.lc 496:37-496:38 Type -> Type->Type
2565testdata/Builtins.lc 496:47-496:52 Nat -> Type->Type 2433testdata/Builtins.lc 496:39-496:48 Nat -> Type->Type
2566testdata/Builtins.lc 496:47-496:54 Type->Type 2434testdata/Builtins.lc 496:39-496:50 Type->Type
2567testdata/Builtins.lc 496:47-496:56 Type 2435testdata/Builtins.lc 496:39-496:56 Type
2568testdata/Builtins.lc 496:47-496:67 Type 2436testdata/Builtins.lc 496:49-496:50 V1
2569testdata/Builtins.lc 496:51-496:52 Nat 2437testdata/Builtins.lc 496:51-496:56 Type
2570testdata/Builtins.lc 496:53-496:54 V2 2438testdata/Builtins.lc 496:61-496:62 Type
2571testdata/Builtins.lc 496:55-496:56 Type 2439testdata/Builtins.lc 496:61-496:72 Type
2572testdata/Builtins.lc 496:60-496:63 Nat -> Type->Type
2573testdata/Builtins.lc 496:60-496:65 Type->Type
2574testdata/Builtins.lc 496:60-496:67 Type
2575testdata/Builtins.lc 496:64-496:65 Nat
2576testdata/Builtins.lc 496:66-496:67 Type 2440testdata/Builtins.lc 496:66-496:67 Type
2577testdata/Builtins.lc 497:1-497:14 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c 2441testdata/Builtins.lc 496:66-496:72 Type
2578testdata/Builtins.lc 497:34-497:37 Nat -> Nat -> Type->Type 2442testdata/Builtins.lc 496:71-496:72 Type
2579testdata/Builtins.lc 497:34-497:39 Nat -> Type->Type 2443testdata/Builtins.lc 497:1-497:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2580testdata/Builtins.lc 497:34-497:41 Type->Type 2444testdata/Builtins.lc 497:34-497:57 Type
2581testdata/Builtins.lc 497:34-497:43 Type 2445testdata/Builtins.lc 497:34-497:67 Type
2582testdata/Builtins.lc 497:34-497:69 Type 2446testdata/Builtins.lc 497:35-497:36 V3
2583testdata/Builtins.lc 497:38-497:39 V7 2447testdata/Builtins.lc 497:35-497:38 Type->Type
2584testdata/Builtins.lc 497:40-497:41 V5 2448testdata/Builtins.lc 497:37-497:38 Type -> Type->Type
2585testdata/Builtins.lc 497:42-497:43 V3 2449testdata/Builtins.lc 497:39-497:48 Nat -> Type->Type
2586testdata/Builtins.lc 497:47-497:50 Nat -> Nat -> Type->Type 2450testdata/Builtins.lc 497:39-497:50 Type->Type
2587testdata/Builtins.lc 497:47-497:52 Nat -> Type->Type 2451testdata/Builtins.lc 497:39-497:56 Type
2588testdata/Builtins.lc 497:47-497:54 Type->Type 2452testdata/Builtins.lc 497:49-497:50 V1
2589testdata/Builtins.lc 497:47-497:56 Type 2453testdata/Builtins.lc 497:51-497:56 Type
2590testdata/Builtins.lc 497:47-497:69 Type 2454testdata/Builtins.lc 497:61-497:62 Type
2591testdata/Builtins.lc 497:51-497:52 Nat 2455testdata/Builtins.lc 497:61-497:67 Type
2592testdata/Builtins.lc 497:53-497:54 V2 2456testdata/Builtins.lc 497:66-497:67 Type
2593testdata/Builtins.lc 497:55-497:56 Type 2457testdata/Builtins.lc 498:1-498:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a
2594testdata/Builtins.lc 497:60-497:63 Nat -> Nat -> Type->Type 2458testdata/Builtins.lc 498:18-498:29 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a
2595testdata/Builtins.lc 497:60-497:65 Nat -> Type->Type 2459testdata/Builtins.lc 498:34-498:57 Type
2596testdata/Builtins.lc 497:60-497:67 Type->Type 2460testdata/Builtins.lc 498:34-498:77 Type
2597testdata/Builtins.lc 497:60-497:69 Type 2461testdata/Builtins.lc 498:35-498:36 V3
2598testdata/Builtins.lc 497:64-497:65 Nat 2462testdata/Builtins.lc 498:35-498:38 Type->Type
2599testdata/Builtins.lc 497:66-497:67 Nat 2463testdata/Builtins.lc 498:37-498:38 Type -> Type->Type
2600testdata/Builtins.lc 497:68-497:69 Type 2464testdata/Builtins.lc 498:39-498:48 Nat -> Type->Type
2601testdata/Builtins.lc 499:1-499:13 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d 2465testdata/Builtins.lc 498:39-498:50 Type->Type
2602testdata/Builtins.lc 499:15-499:32 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d 2466testdata/Builtins.lc 498:39-498:56 Type
2603testdata/Builtins.lc 499:34-499:49 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d 2467testdata/Builtins.lc 498:49-498:50 V1
2604testdata/Builtins.lc 499:51-499:71 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d 2468testdata/Builtins.lc 498:51-498:56 Type
2605testdata/Builtins.lc 499:73-499:83 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d 2469testdata/Builtins.lc 498:61-498:62 Type
2606testdata/Builtins.lc 499:85-499:98 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d 2470testdata/Builtins.lc 498:61-498:77 Type
2607testdata/Builtins.lc 500:34-500:97 Type 2471testdata/Builtins.lc 498:66-498:67 Type
2608testdata/Builtins.lc 500:35-500:38 Type->Type 2472testdata/Builtins.lc 498:66-498:77 Type
2609testdata/Builtins.lc 500:35-500:40 Type 2473testdata/Builtins.lc 498:71-498:72 Type
2610testdata/Builtins.lc 500:39-500:40 V7 2474testdata/Builtins.lc 498:71-498:77 Type
2611testdata/Builtins.lc 500:42-500:43 V6 2475testdata/Builtins.lc 498:76-498:77 Type
2612testdata/Builtins.lc 500:42-500:45 Type->Type 2476testdata/Builtins.lc 499:1-499:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a
2613testdata/Builtins.lc 500:42-500:59 Type 2477testdata/Builtins.lc 499:34-499:57 Type
2614testdata/Builtins.lc 500:42-500:97 Type 2478testdata/Builtins.lc 499:34-499:72 Type
2615testdata/Builtins.lc 500:44-500:45 Type -> Type->Type 2479testdata/Builtins.lc 499:35-499:36 V3
2616testdata/Builtins.lc 500:46-500:55 Nat -> Type->Type 2480testdata/Builtins.lc 499:35-499:38 Type->Type
2617testdata/Builtins.lc 500:46-500:57 Type->Type 2481testdata/Builtins.lc 499:37-499:38 Type -> Type->Type
2618testdata/Builtins.lc 500:46-500:59 Type 2482testdata/Builtins.lc 499:39-499:48 Nat -> Type->Type
2619testdata/Builtins.lc 500:56-500:57 V4 2483testdata/Builtins.lc 499:39-499:50 Type->Type
2620testdata/Builtins.lc 500:58-500:59 Type 2484testdata/Builtins.lc 499:39-499:56 Type
2621testdata/Builtins.lc 500:61-500:62 V3 2485testdata/Builtins.lc 499:49-499:50 V1
2622testdata/Builtins.lc 500:61-500:64 Type->Type 2486testdata/Builtins.lc 499:51-499:56 Type
2623testdata/Builtins.lc 500:61-500:81 Type 2487testdata/Builtins.lc 499:61-499:62 Type
2624testdata/Builtins.lc 500:61-500:97 Type 2488testdata/Builtins.lc 499:61-499:72 Type
2625testdata/Builtins.lc 500:63-500:64 Type -> Type->Type 2489testdata/Builtins.lc 499:66-499:67 Type
2626testdata/Builtins.lc 500:65-500:74 Nat -> Type->Type 2490testdata/Builtins.lc 499:66-499:72 Type
2627testdata/Builtins.lc 500:65-500:76 Type->Type 2491testdata/Builtins.lc 499:71-499:72 Type
2628testdata/Builtins.lc 500:65-500:81 Type 2492testdata/Builtins.lc 501:1-501:14 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> Mat b a c
2629testdata/Builtins.lc 500:75-500:76 Nat 2493testdata/Builtins.lc 501:34-501:37 Nat -> Nat -> Type->Type
2630testdata/Builtins.lc 500:77-500:81 Type 2494testdata/Builtins.lc 501:34-501:39 Nat -> Type->Type
2631testdata/Builtins.lc 500:86-500:87 Type 2495testdata/Builtins.lc 501:34-501:41 Type->Type
2632testdata/Builtins.lc 500:86-500:97 Type 2496testdata/Builtins.lc 501:34-501:43 Type
2633testdata/Builtins.lc 500:91-500:92 Type 2497testdata/Builtins.lc 501:34-501:56 Type
2634testdata/Builtins.lc 500:91-500:97 Type 2498testdata/Builtins.lc 501:38-501:39 V5
2635testdata/Builtins.lc 500:96-500:97 Type 2499testdata/Builtins.lc 501:40-501:41 V3
2636testdata/Builtins.lc 501:1-501:10 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> b -> b->Bool 2500testdata/Builtins.lc 501:42-501:43 V1
2637testdata/Builtins.lc 501:12-501:24 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> b -> b->Bool 2501testdata/Builtins.lc 501:47-501:50 Nat -> Nat -> Type->Type
2638testdata/Builtins.lc 501:34-501:58 Type 2502testdata/Builtins.lc 501:47-501:52 Nat -> Type->Type
2639testdata/Builtins.lc 501:34-501:76 Type 2503testdata/Builtins.lc 501:47-501:54 Type->Type
2640testdata/Builtins.lc 501:35-501:36 V3 2504testdata/Builtins.lc 501:47-501:56 Type
2641testdata/Builtins.lc 501:35-501:38 Type->Type 2505testdata/Builtins.lc 501:51-501:52 Nat
2642testdata/Builtins.lc 501:37-501:38 Type -> Type->Type 2506testdata/Builtins.lc 501:53-501:54 Nat
2643testdata/Builtins.lc 501:39-501:55 Type->Type 2507testdata/Builtins.lc 501:55-501:56 Type
2644testdata/Builtins.lc 501:39-501:57 Type 2508testdata/Builtins.lc 502:1-502:16 {a:Nat} -> {b} -> Mat a a b -> Float
2645testdata/Builtins.lc 501:56-501:57 V1 2509testdata/Builtins.lc 502:34-502:37 Nat -> Nat -> Type->Type
2646testdata/Builtins.lc 501:62-501:63 Type 2510testdata/Builtins.lc 502:34-502:39 Nat -> Type->Type
2647testdata/Builtins.lc 501:62-501:76 Type 2511testdata/Builtins.lc 502:34-502:41 Type->Type
2648testdata/Builtins.lc 501:67-501:68 Type 2512testdata/Builtins.lc 502:34-502:43 Type
2649testdata/Builtins.lc 501:67-501:76 Type 2513testdata/Builtins.lc 502:34-502:52 Type
2650testdata/Builtins.lc 501:72-501:76 Type 2514testdata/Builtins.lc 502:38-502:39 V3
2651testdata/Builtins.lc 503:1-503:9 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 2515testdata/Builtins.lc 502:40-502:41 Nat
2652testdata/Builtins.lc 503:11-503:19 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 2516testdata/Builtins.lc 502:42-502:43 V1
2653testdata/Builtins.lc 503:21-503:31 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 2517testdata/Builtins.lc 502:47-502:52 Type
2654testdata/Builtins.lc 504:34-504:57 Type 2518testdata/Builtins.lc 503:1-503:12 {a:Nat} -> {b} -> Mat a a b -> Mat a a b
2655testdata/Builtins.lc 504:34-504:67 Type 2519testdata/Builtins.lc 503:34-503:37 Nat -> Nat -> Type->Type
2656testdata/Builtins.lc 504:35-504:36 V3 2520testdata/Builtins.lc 503:34-503:39 Nat -> Type->Type
2657testdata/Builtins.lc 504:35-504:38 Type->Type 2521testdata/Builtins.lc 503:34-503:41 Type->Type
2658testdata/Builtins.lc 504:37-504:38 Type -> Type->Type 2522testdata/Builtins.lc 503:34-503:43 Type
2659testdata/Builtins.lc 504:39-504:48 Nat -> Type->Type 2523testdata/Builtins.lc 503:34-503:56 Type
2660testdata/Builtins.lc 504:39-504:50 Type->Type 2524testdata/Builtins.lc 503:38-503:39 V3
2661testdata/Builtins.lc 504:39-504:56 Type 2525testdata/Builtins.lc 503:40-503:41 Nat
2662testdata/Builtins.lc 504:49-504:50 V1 2526testdata/Builtins.lc 503:42-503:43 V1
2663testdata/Builtins.lc 504:51-504:56 Type 2527testdata/Builtins.lc 503:47-503:50 Nat -> Nat -> Type->Type
2664testdata/Builtins.lc 504:61-504:62 Type 2528testdata/Builtins.lc 503:47-503:52 Nat -> Type->Type
2665testdata/Builtins.lc 504:61-504:67 Type 2529testdata/Builtins.lc 503:47-503:54 Type->Type
2666testdata/Builtins.lc 504:66-504:67 Type 2530testdata/Builtins.lc 503:47-503:56 Type
2667testdata/Builtins.lc 506:1-506:11 {a:Nat} -> VecScalar a Float -> Float 2531testdata/Builtins.lc 503:51-503:52 Nat
2668testdata/Builtins.lc 506:34-506:43 Nat -> Type->Type 2532testdata/Builtins.lc 503:53-503:54 Nat
2669testdata/Builtins.lc 506:34-506:45 Type->Type 2533testdata/Builtins.lc 503:55-503:56 Type
2670testdata/Builtins.lc 506:34-506:51 Type 2534testdata/Builtins.lc 504:1-504:17 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> VecS b c -> Mat c a b
2671testdata/Builtins.lc 506:34-506:60 Type 2535testdata/Builtins.lc 504:34-504:37 Nat -> Type->Type
2672testdata/Builtins.lc 506:44-506:45 V1 2536testdata/Builtins.lc 504:34-504:39 Type->Type
2673testdata/Builtins.lc 506:46-506:51 Type 2537testdata/Builtins.lc 504:34-504:41 Type
2674testdata/Builtins.lc 506:55-506:60 Type 2538testdata/Builtins.lc 504:34-504:69 Type
2675testdata/Builtins.lc 507:1-507:11 {a:Nat} -> VecScalar a Float -> VecS Float 2 2539testdata/Builtins.lc 504:38-504:39 V5
2676testdata/Builtins.lc 507:34-507:43 Nat -> Type->Type 2540testdata/Builtins.lc 504:40-504:41 V3
2677testdata/Builtins.lc 507:34-507:45 Type->Type 2541testdata/Builtins.lc 504:47-504:50 Nat -> Type->Type
2678testdata/Builtins.lc 507:34-507:51 Type 2542testdata/Builtins.lc 504:47-504:52 Type->Type
2679testdata/Builtins.lc 507:34-507:66 Type 2543testdata/Builtins.lc 504:47-504:54 Type
2680testdata/Builtins.lc 507:44-507:45 V1 2544testdata/Builtins.lc 504:47-504:69 Type
2681testdata/Builtins.lc 507:46-507:51 Type 2545testdata/Builtins.lc 504:51-504:52 V2
2682testdata/Builtins.lc 507:55-507:58 Nat -> Type->Type 2546testdata/Builtins.lc 504:53-504:54 Type
2683testdata/Builtins.lc 507:55-507:60 Type->Type 2547testdata/Builtins.lc 504:60-504:63 Nat -> Nat -> Type->Type
2684testdata/Builtins.lc 507:55-507:66 Type 2548testdata/Builtins.lc 504:60-504:65 Nat -> Type->Type
2685testdata/Builtins.lc 507:59-507:60 V1 2549testdata/Builtins.lc 504:60-504:67 Type->Type
2686testdata/Builtins.lc 507:61-507:66 Type 2550testdata/Builtins.lc 504:60-504:69 Type
2687testdata/Builtins.lc 508:1-508:11 {a:Nat} -> VecScalar a Float -> VecS Float 3 2551testdata/Builtins.lc 504:64-504:65 Nat
2688testdata/Builtins.lc 508:34-508:43 Nat -> Type->Type 2552testdata/Builtins.lc 504:66-504:67 Nat
2689testdata/Builtins.lc 508:34-508:45 Type->Type 2553testdata/Builtins.lc 504:68-504:69 Type
2690testdata/Builtins.lc 508:34-508:51 Type 2554testdata/Builtins.lc 505:1-505:14 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> VecS c b -> VecS c a
2691testdata/Builtins.lc 508:34-508:66 Type 2555testdata/Builtins.lc 505:34-505:37 Nat -> Nat -> Type->Type
2692testdata/Builtins.lc 508:44-508:45 V1 2556testdata/Builtins.lc 505:34-505:39 Nat -> Type->Type
2693testdata/Builtins.lc 508:46-508:51 Type 2557testdata/Builtins.lc 505:34-505:41 Type->Type
2694testdata/Builtins.lc 508:55-508:58 Nat -> Type->Type 2558testdata/Builtins.lc 505:34-505:43 Type
2695testdata/Builtins.lc 508:55-508:60 Type->Type 2559testdata/Builtins.lc 505:34-505:67 Type
2696testdata/Builtins.lc 508:55-508:66 Type 2560testdata/Builtins.lc 505:38-505:39 V5
2697testdata/Builtins.lc 508:59-508:60 V1 2561testdata/Builtins.lc 505:40-505:41 V3
2698testdata/Builtins.lc 508:61-508:66 Type 2562testdata/Builtins.lc 505:42-505:43 V1
2699testdata/Builtins.lc 509:1-509:11 {a:Nat} -> VecScalar a Float -> VecS Float 4 2563testdata/Builtins.lc 505:47-505:50 Nat -> Type->Type
2700testdata/Builtins.lc 509:34-509:43 Nat -> Type->Type 2564testdata/Builtins.lc 505:47-505:52 Type->Type
2701testdata/Builtins.lc 509:34-509:45 Type->Type 2565testdata/Builtins.lc 505:47-505:54 Type
2702testdata/Builtins.lc 509:34-509:51 Type 2566testdata/Builtins.lc 505:47-505:67 Type
2703testdata/Builtins.lc 509:34-509:66 Type 2567testdata/Builtins.lc 505:51-505:52 Nat
2704testdata/Builtins.lc 509:44-509:45 V1 2568testdata/Builtins.lc 505:53-505:54 Type
2705testdata/Builtins.lc 509:46-509:51 Type 2569testdata/Builtins.lc 505:60-505:63 Nat -> Type->Type
2706testdata/Builtins.lc 509:55-509:58 Nat -> Type->Type 2570testdata/Builtins.lc 505:60-505:65 Type->Type
2707testdata/Builtins.lc 509:55-509:60 Type->Type 2571testdata/Builtins.lc 505:60-505:67 Type
2708testdata/Builtins.lc 509:55-509:66 Type 2572testdata/Builtins.lc 505:64-505:65 Nat
2709testdata/Builtins.lc 509:59-509:60 V1 2573testdata/Builtins.lc 505:66-505:67 Type
2710testdata/Builtins.lc 509:61-509:66 Type 2574testdata/Builtins.lc 506:1-506:14 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> Mat a c b -> VecS b c
2711testdata/Builtins.lc 525:6-525:13 Type 2575testdata/Builtins.lc 506:34-506:37 Nat -> Type->Type
2712testdata/Builtins.lc 525:6-529:12 Type 2576testdata/Builtins.lc 506:34-506:39 Type->Type
2713testdata/Builtins.lc 526:3-526:16 String->Texture | Texture | Type 2577testdata/Builtins.lc 506:34-506:41 Type
2714testdata/Builtins.lc 526:20-526:26 Type 2578testdata/Builtins.lc 506:34-506:67 Type
2715testdata/Builtins.lc 527:20-527:27 Type 2579testdata/Builtins.lc 506:38-506:39 V5
2716testdata/Builtins.lc 529:3-529:12 Texture | Type | VecS Int 2 -> Image 1 (Color (VecS Float 4)) -> Texture 2580testdata/Builtins.lc 506:40-506:41 V3
2717testdata/Builtins.lc 529:20-529:23 Nat -> Type->Type 2581testdata/Builtins.lc 506:47-506:50 Nat -> Nat -> Type->Type
2718testdata/Builtins.lc 529:20-529:25 Type->Type 2582testdata/Builtins.lc 506:47-506:52 Nat -> Type->Type
2719testdata/Builtins.lc 529:20-529:29 Type 2583testdata/Builtins.lc 506:47-506:54 Type->Type
2720testdata/Builtins.lc 529:24-529:25 V1 2584testdata/Builtins.lc 506:47-506:56 Type
2721testdata/Builtins.lc 529:26-529:29 Type 2585testdata/Builtins.lc 506:47-506:67 Type
2722testdata/Builtins.lc 530:20-530:25 Nat -> Type->Type 2586testdata/Builtins.lc 506:51-506:52 Nat
2723testdata/Builtins.lc 530:20-530:27 Type->Type 2587testdata/Builtins.lc 506:53-506:54 V2
2724testdata/Builtins.lc 530:20-530:49 Type 2588testdata/Builtins.lc 506:55-506:56 Type
2725testdata/Builtins.lc 530:20-531:27 Type 2589testdata/Builtins.lc 506:60-506:63 Nat -> Type->Type
2726testdata/Builtins.lc 530:26-530:27 V1 2590testdata/Builtins.lc 506:60-506:65 Type->Type
2727testdata/Builtins.lc 530:28-530:49 Type 2591testdata/Builtins.lc 506:60-506:67 Type
2728testdata/Builtins.lc 530:29-530:34 Type->Type 2592testdata/Builtins.lc 506:64-506:65 Nat
2729testdata/Builtins.lc 530:35-530:48 Type 2593testdata/Builtins.lc 506:66-506:67 Type
2730testdata/Builtins.lc 530:36-530:39 Nat -> Type->Type 2594testdata/Builtins.lc 507:1-507:14 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c
2731testdata/Builtins.lc 530:36-530:41 Type->Type 2595testdata/Builtins.lc 507:34-507:37 Nat -> Nat -> Type->Type
2732testdata/Builtins.lc 530:40-530:41 V1 2596testdata/Builtins.lc 507:34-507:39 Nat -> Type->Type
2733testdata/Builtins.lc 530:42-530:47 Type 2597testdata/Builtins.lc 507:34-507:41 Type->Type
2734testdata/Builtins.lc 531:20-531:27 Type 2598testdata/Builtins.lc 507:34-507:43 Type
2735testdata/Builtins.lc 533:6-533:12 Type 2599testdata/Builtins.lc 507:34-507:69 Type
2736testdata/Builtins.lc 533:6-535:17 Type 2600testdata/Builtins.lc 507:38-507:39 V7
2737testdata/Builtins.lc 534:5-534:16 Filter 2601testdata/Builtins.lc 507:40-507:41 V5
2738testdata/Builtins.lc 535:5-535:17 Filter 2602testdata/Builtins.lc 507:42-507:43 V3
2739testdata/Builtins.lc 537:6-537:14 Type 2603testdata/Builtins.lc 507:47-507:50 Nat -> Nat -> Type->Type
2740testdata/Builtins.lc 537:6-540:16 Type 2604testdata/Builtins.lc 507:47-507:52 Nat -> Type->Type
2741testdata/Builtins.lc 538:5-538:11 EdgeMode 2605testdata/Builtins.lc 507:47-507:54 Type->Type
2742testdata/Builtins.lc 539:5-539:19 EdgeMode 2606testdata/Builtins.lc 507:47-507:56 Type
2743testdata/Builtins.lc 540:5-540:16 EdgeMode 2607testdata/Builtins.lc 507:47-507:69 Type
2744testdata/Builtins.lc 542:6-542:13 Type 2608testdata/Builtins.lc 507:51-507:52 Nat
2745testdata/Builtins.lc 542:6-542:23 Type 2609testdata/Builtins.lc 507:53-507:54 V2
2746testdata/Builtins.lc 542:6-542:47 Type 2610testdata/Builtins.lc 507:55-507:56 Type
2747testdata/Builtins.lc 542:16-542:23 Filter -> EdgeMode -> Texture->Sampler | Sampler | Type 2611testdata/Builtins.lc 507:60-507:63 Nat -> Nat -> Type->Type
2748testdata/Builtins.lc 542:24-542:30 Type 2612testdata/Builtins.lc 507:60-507:65 Nat -> Type->Type
2749testdata/Builtins.lc 542:31-542:39 Type 2613testdata/Builtins.lc 507:60-507:67 Type->Type
2750testdata/Builtins.lc 542:40-542:47 Type 2614testdata/Builtins.lc 507:60-507:69 Type
2751testdata/Builtins.lc 545:1-545:10 Sampler -> VecS Float 2 -> VecS Float 4 2615testdata/Builtins.lc 507:64-507:65 Nat
2752testdata/Builtins.lc 545:14-545:21 Type 2616testdata/Builtins.lc 507:66-507:67 Nat
2753testdata/Builtins.lc 545:25-545:28 Nat -> Type->Type 2617testdata/Builtins.lc 507:68-507:69 Type
2754testdata/Builtins.lc 545:25-545:30 Type->Type 2618testdata/Builtins.lc 509:1-509:13 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d
2755testdata/Builtins.lc 545:25-545:36 Type 2619testdata/Builtins.lc 509:15-509:32 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d
2756testdata/Builtins.lc 545:25-545:51 Type 2620testdata/Builtins.lc 509:34-509:49 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d
2757testdata/Builtins.lc 545:29-545:30 V1 2621testdata/Builtins.lc 509:51-509:71 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d
2758testdata/Builtins.lc 545:31-545:36 Type 2622testdata/Builtins.lc 509:73-509:83 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d
2759testdata/Builtins.lc 545:40-545:43 Nat -> Type->Type 2623testdata/Builtins.lc 509:85-509:98 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d
2760testdata/Builtins.lc 545:40-545:45 Type->Type 2624testdata/Builtins.lc 510:34-510:97 Type
2761testdata/Builtins.lc 545:40-545:51 Type 2625testdata/Builtins.lc 510:35-510:38 Type->Type
2762testdata/Builtins.lc 545:44-545:45 V1 2626testdata/Builtins.lc 510:35-510:40 Type
2763testdata/Builtins.lc 545:46-545:51 Type 2627testdata/Builtins.lc 510:39-510:40 V7
2764testdata/Builtins.lc 548:1-548:15 {a} -> {b} -> a -> b -> Tuple2 a b 2628testdata/Builtins.lc 510:42-510:43 V6
2765testdata/Builtins.lc 548:24-548:32 Tuple2 V3 V1 2629testdata/Builtins.lc 510:42-510:45 Type->Type
2766testdata/Builtins.lc 548:25-548:28 V5 2630testdata/Builtins.lc 510:42-510:59 Type
2767testdata/Builtins.lc 548:30-548:31 V2 2631testdata/Builtins.lc 510:42-510:97 Type
2768testdata/Builtins.lc 549:1-549:8 {a:Nat} -> {b} -> FrameBuffer a b -> Tuple2 (FragOps' b) (Stream (Fragment a (RemSemantics b))) -> FrameBuffer a b 2632testdata/Builtins.lc 510:44-510:45 Type -> Type->Type
2769testdata/Builtins.lc 549:13-549:21 V3 2633testdata/Builtins.lc 510:46-510:55 Nat -> Type->Type
2770testdata/Builtins.lc 549:13-549:46 FrameBuffer V1 V0 2634testdata/Builtins.lc 510:46-510:57 Type->Type
2771testdata/Builtins.lc 549:25-549:35 {a:Nat} -> {b} -> FragOps' b -> Stream (Fragment a (RemSemantics b)) -> FrameBuffer a b -> FrameBuffer a b 2635testdata/Builtins.lc 510:46-510:59 Type
2772testdata/Builtins.lc 549:25-549:39 Stream (Fragment V1 (RemSemantics V0)) -> FrameBuffer V2 V1 -> FrameBuffer V3 V2 2636testdata/Builtins.lc 510:56-510:57 V4
2773testdata/Builtins.lc 549:25-549:43 FrameBuffer V1 V0 -> FrameBuffer V2 V1 2637testdata/Builtins.lc 510:58-510:59 Type
2774testdata/Builtins.lc 549:25-549:46 FrameBuffer V1 V0 | V2 -> V2->V2 | V2->V2 2638testdata/Builtins.lc 510:61-510:62 V3
2775testdata/Builtins.lc 549:36-549:39 V6 2639testdata/Builtins.lc 510:61-510:64 Type->Type
2776testdata/Builtins.lc 549:40-549:43 V5 2640testdata/Builtins.lc 510:61-510:81 Type
2777testdata/Builtins.lc 549:44-549:46 V7 2641testdata/Builtins.lc 510:61-510:97 Type
2778testdata/Builtins.lc 550:1-550:12 {a:Nat} -> {b} -> FrameBuffer a b -> Output 2642testdata/Builtins.lc 510:63-510:64 Type -> Type->Type
2779testdata/Builtins.lc 550:15-550:24 {a:Nat} -> {b} -> FrameBuffer a b -> Output 2643testdata/Builtins.lc 510:65-510:74 Nat -> Type->Type
2780testdata/Builtins.lc 551:1-551:11 {a:Nat} -> {b} -> {c} -> {d : SameLayerCounts c} -> {e : PreFrameBuffer a b ~ TFFrameBuffer c} -> c -> FrameBuffer a b 2644testdata/Builtins.lc 510:65-510:76 Type->Type
2781testdata/Builtins.lc 551:14-551:25 {a:Nat} -> {b} -> {c} -> {d : SameLayerCounts c} -> {e : PreFrameBuffer a b ~ TFFrameBuffer c} -> c -> FrameBuffer a b 2645testdata/Builtins.lc 510:65-510:81 Type
2782testdata/Builtins.lc 552:1-552:16 Float -> Image 1 (Depth Float) 2646testdata/Builtins.lc 510:75-510:76 Nat
2783testdata/Builtins.lc 552:19-552:29 {a:Nat} -> Float -> Image a (Depth Float) 2647testdata/Builtins.lc 510:77-510:81 Type
2784testdata/Builtins.lc 552:19-552:32 Float -> Image 1 (Depth Float) 2648testdata/Builtins.lc 510:86-510:87 Type
2785testdata/Builtins.lc 552:31-552:32 V1 2649testdata/Builtins.lc 510:86-510:97 Type
2786testdata/Builtins.lc 553:1-553:16 {a:Nat} -> {b} -> {c} -> {d : Num b} -> {e : c ~ VecScalar a b} -> c -> Image 1 (Color c) 2650testdata/Builtins.lc 510:91-510:92 Type
2787testdata/Builtins.lc 553:19-553:29 {a:Nat} -> {b:Nat} -> {c} -> {d} -> {e : Num c} -> {f : d ~ VecScalar b c} -> d -> Image a (Color d) 2651testdata/Builtins.lc 510:91-510:97 Type
2788testdata/Builtins.lc 553:19-553:32 {a:Nat} -> {b} -> {c} -> {d : Num b} -> {e : c ~ VecScalar a b} -> c -> Image 1 (Color c) 2652testdata/Builtins.lc 510:96-510:97 Type
2789testdata/Builtins.lc 553:31-553:32 V1 2653testdata/Builtins.lc 511:1-511:10 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> b -> b->Bool
2654testdata/Builtins.lc 511:12-511:24 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> b -> b->Bool
2655testdata/Builtins.lc 511:34-511:58 Type
2656testdata/Builtins.lc 511:34-511:76 Type
2657testdata/Builtins.lc 511:35-511:36 V3
2658testdata/Builtins.lc 511:35-511:38 Type->Type
2659testdata/Builtins.lc 511:37-511:38 Type -> Type->Type
2660testdata/Builtins.lc 511:39-511:55 Type->Type
2661testdata/Builtins.lc 511:39-511:57 Type
2662testdata/Builtins.lc 511:56-511:57 V1
2663testdata/Builtins.lc 511:62-511:63 Type
2664testdata/Builtins.lc 511:62-511:76 Type
2665testdata/Builtins.lc 511:67-511:68 Type
2666testdata/Builtins.lc 511:67-511:76 Type
2667testdata/Builtins.lc 511:72-511:76 Type
2668testdata/Builtins.lc 513:1-513:9 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2669testdata/Builtins.lc 513:11-513:19 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2670testdata/Builtins.lc 513:21-513:31 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
2671testdata/Builtins.lc 514:34-514:57 Type
2672testdata/Builtins.lc 514:34-514:67 Type
2673testdata/Builtins.lc 514:35-514:36 V3
2674testdata/Builtins.lc 514:35-514:38 Type->Type
2675testdata/Builtins.lc 514:37-514:38 Type -> Type->Type
2676testdata/Builtins.lc 514:39-514:48 Nat -> Type->Type
2677testdata/Builtins.lc 514:39-514:50 Type->Type
2678testdata/Builtins.lc 514:39-514:56 Type
2679testdata/Builtins.lc 514:49-514:50 V1
2680testdata/Builtins.lc 514:51-514:56 Type
2681testdata/Builtins.lc 514:61-514:62 Type
2682testdata/Builtins.lc 514:61-514:67 Type
2683testdata/Builtins.lc 514:66-514:67 Type
2684testdata/Builtins.lc 516:1-516:11 {a:Nat} -> VecScalar a Float -> Float
2685testdata/Builtins.lc 516:34-516:43 Nat -> Type->Type
2686testdata/Builtins.lc 516:34-516:45 Type->Type
2687testdata/Builtins.lc 516:34-516:51 Type
2688testdata/Builtins.lc 516:34-516:60 Type
2689testdata/Builtins.lc 516:44-516:45 V1
2690testdata/Builtins.lc 516:46-516:51 Type
2691testdata/Builtins.lc 516:55-516:60 Type
2692testdata/Builtins.lc 517:1-517:11 {a:Nat} -> VecScalar a Float -> VecS Float 2
2693testdata/Builtins.lc 517:34-517:43 Nat -> Type->Type
2694testdata/Builtins.lc 517:34-517:45 Type->Type
2695testdata/Builtins.lc 517:34-517:51 Type
2696testdata/Builtins.lc 517:34-517:66 Type
2697testdata/Builtins.lc 517:44-517:45 V1
2698testdata/Builtins.lc 517:46-517:51 Type
2699testdata/Builtins.lc 517:55-517:58 Nat -> Type->Type
2700testdata/Builtins.lc 517:55-517:60 Type->Type
2701testdata/Builtins.lc 517:55-517:66 Type
2702testdata/Builtins.lc 517:59-517:60 V1
2703testdata/Builtins.lc 517:61-517:66 Type
2704testdata/Builtins.lc 518:1-518:11 {a:Nat} -> VecScalar a Float -> VecS Float 3
2705testdata/Builtins.lc 518:34-518:43 Nat -> Type->Type
2706testdata/Builtins.lc 518:34-518:45 Type->Type
2707testdata/Builtins.lc 518:34-518:51 Type
2708testdata/Builtins.lc 518:34-518:66 Type
2709testdata/Builtins.lc 518:44-518:45 V1
2710testdata/Builtins.lc 518:46-518:51 Type
2711testdata/Builtins.lc 518:55-518:58 Nat -> Type->Type
2712testdata/Builtins.lc 518:55-518:60 Type->Type
2713testdata/Builtins.lc 518:55-518:66 Type
2714testdata/Builtins.lc 518:59-518:60 V1
2715testdata/Builtins.lc 518:61-518:66 Type
2716testdata/Builtins.lc 519:1-519:11 {a:Nat} -> VecScalar a Float -> VecS Float 4
2717testdata/Builtins.lc 519:34-519:43 Nat -> Type->Type
2718testdata/Builtins.lc 519:34-519:45 Type->Type
2719testdata/Builtins.lc 519:34-519:51 Type
2720testdata/Builtins.lc 519:34-519:66 Type
2721testdata/Builtins.lc 519:44-519:45 V1
2722testdata/Builtins.lc 519:46-519:51 Type
2723testdata/Builtins.lc 519:55-519:58 Nat -> Type->Type
2724testdata/Builtins.lc 519:55-519:60 Type->Type
2725testdata/Builtins.lc 519:55-519:66 Type
2726testdata/Builtins.lc 519:59-519:60 V1
2727testdata/Builtins.lc 519:61-519:66 Type
2728testdata/Builtins.lc 535:6-535:13 Type
2729testdata/Builtins.lc 535:6-539:12 Type
2730testdata/Builtins.lc 536:3-536:16 String->Texture | Texture | Type
2731testdata/Builtins.lc 536:20-536:26 Type
2732testdata/Builtins.lc 537:20-537:27 Type
2733testdata/Builtins.lc 539:3-539:12 Texture | Type | VecS Int 2 -> Image 1 (Color (VecS Float 4)) -> Texture
2734testdata/Builtins.lc 539:20-539:23 Nat -> Type->Type
2735testdata/Builtins.lc 539:20-539:25 Type->Type
2736testdata/Builtins.lc 539:20-539:29 Type
2737testdata/Builtins.lc 539:24-539:25 V1
2738testdata/Builtins.lc 539:26-539:29 Type
2739testdata/Builtins.lc 540:20-540:25 Nat -> Type->Type
2740testdata/Builtins.lc 540:20-540:27 Type->Type
2741testdata/Builtins.lc 540:20-540:49 Type
2742testdata/Builtins.lc 540:20-541:27 Type
2743testdata/Builtins.lc 540:26-540:27 V1
2744testdata/Builtins.lc 540:28-540:49 Type
2745testdata/Builtins.lc 540:29-540:34 Type->Type
2746testdata/Builtins.lc 540:35-540:48 Type
2747testdata/Builtins.lc 540:36-540:39 Nat -> Type->Type
2748testdata/Builtins.lc 540:36-540:41 Type->Type
2749testdata/Builtins.lc 540:40-540:41 V1
2750testdata/Builtins.lc 540:42-540:47 Type
2751testdata/Builtins.lc 541:20-541:27 Type
2752testdata/Builtins.lc 543:6-543:12 Type
2753testdata/Builtins.lc 543:6-545:17 Type
2754testdata/Builtins.lc 544:5-544:16 Filter
2755testdata/Builtins.lc 545:5-545:17 Filter
2756testdata/Builtins.lc 547:6-547:14 Type
2757testdata/Builtins.lc 547:6-550:16 Type
2758testdata/Builtins.lc 548:5-548:11 EdgeMode
2759testdata/Builtins.lc 549:5-549:19 EdgeMode
2760testdata/Builtins.lc 550:5-550:16 EdgeMode
2761testdata/Builtins.lc 552:6-552:13 Type
2762testdata/Builtins.lc 552:6-552:23 Type
2763testdata/Builtins.lc 552:6-552:47 Type
2764testdata/Builtins.lc 552:16-552:23 Filter -> EdgeMode -> Texture->Sampler | Sampler | Type
2765testdata/Builtins.lc 552:24-552:30 Type
2766testdata/Builtins.lc 552:31-552:39 Type
2767testdata/Builtins.lc 552:40-552:47 Type
2768testdata/Builtins.lc 555:1-555:10 Sampler -> VecS Float 2 -> VecS Float 4
2769testdata/Builtins.lc 555:14-555:21 Type
2770testdata/Builtins.lc 555:25-555:28 Nat -> Type->Type
2771testdata/Builtins.lc 555:25-555:30 Type->Type
2772testdata/Builtins.lc 555:25-555:36 Type
2773testdata/Builtins.lc 555:25-555:51 Type
2774testdata/Builtins.lc 555:29-555:30 V1
2775testdata/Builtins.lc 555:31-555:36 Type
2776testdata/Builtins.lc 555:40-555:43 Nat -> Type->Type
2777testdata/Builtins.lc 555:40-555:45 Type->Type
2778testdata/Builtins.lc 555:40-555:51 Type
2779testdata/Builtins.lc 555:44-555:45 V1
2780testdata/Builtins.lc 555:46-555:51 Type
2781testdata/Builtins.lc 558:1-558:15 {a} -> {b} -> a -> b -> Tuple2 a b
2782testdata/Builtins.lc 558:24-558:32 Tuple2 V3 V1
2783testdata/Builtins.lc 558:25-558:28 V5
2784testdata/Builtins.lc 558:30-558:31 V2
2785testdata/Builtins.lc 559:1-559:8 {a:Nat} -> {b} -> FrameBuffer a b -> Tuple2 (FragOps' b) (Stream (Vector a (Maybe (SimpleFragment (RemSemantics b))))) -> FrameBuffer a b
2786testdata/Builtins.lc 559:13-559:21 V3
2787testdata/Builtins.lc 559:13-559:46 FrameBuffer V1 V0
2788testdata/Builtins.lc 559:25-559:35 {a:Nat} -> {b} -> FragOps' b -> Stream (Vector a (Maybe (SimpleFragment (RemSemantics b)))) -> FrameBuffer a b -> FrameBuffer a b
2789testdata/Builtins.lc 559:25-559:39 Stream (Vector V1 (Maybe (SimpleFragment (RemSemantics V0)))) -> FrameBuffer V2 V1 -> FrameBuffer V3 V2
2790testdata/Builtins.lc 559:25-559:43 FrameBuffer V1 V0 -> FrameBuffer V2 V1
2791testdata/Builtins.lc 559:25-559:46 FrameBuffer V1 V0 | V2 -> V2->V2 | V2->V2
2792testdata/Builtins.lc 559:36-559:39 V6
2793testdata/Builtins.lc 559:40-559:43 V5
2794testdata/Builtins.lc 559:44-559:46 V7
2795testdata/Builtins.lc 560:1-560:12 {a:Nat} -> {b} -> FrameBuffer a b -> Output
2796testdata/Builtins.lc 560:15-560:24 {a:Nat} -> {b} -> FrameBuffer a b -> Output
2797testdata/Builtins.lc 561:1-561:11 {a:Nat} -> {b} -> {c} -> {d : SameLayerCounts c} -> {e : PreFrameBuffer a b ~ TFFrameBuffer c} -> c -> FrameBuffer a b
2798testdata/Builtins.lc 561:14-561:25 {a:Nat} -> {b} -> {c} -> {d : SameLayerCounts c} -> {e : PreFrameBuffer a b ~ TFFrameBuffer c} -> c -> FrameBuffer a b
2799testdata/Builtins.lc 562:1-562:16 Float -> Image 1 (Depth Float)
2800testdata/Builtins.lc 562:19-562:29 {a:Nat} -> Float -> Image a (Depth Float)
2801testdata/Builtins.lc 562:19-562:32 Float -> Image 1 (Depth Float)
2802testdata/Builtins.lc 562:31-562:32 V1
2803testdata/Builtins.lc 563:1-563:16 {a:Nat} -> {b} -> {c} -> {d : Num b} -> {e : c ~ VecScalar a b} -> c -> Image 1 (Color c)
2804testdata/Builtins.lc 563:19-563:29 {a:Nat} -> {b:Nat} -> {c} -> {d} -> {e : Num c} -> {f : d ~ VecScalar b c} -> d -> Image a (Color d)
2805testdata/Builtins.lc 563:19-563:32 {a:Nat} -> {b} -> {c} -> {d : Num b} -> {e : c ~ VecScalar a b} -> c -> Image 1 (Color c)
2806testdata/Builtins.lc 563:31-563:32 V1
diff --git a/testdata/Prelude.out b/testdata/Prelude.out
index 4da3f96b..0157173e 100644
--- a/testdata/Prelude.out
+++ b/testdata/Prelude.out
@@ -300,187 +300,229 @@ testdata/Prelude.lc 87:28-87:29 V3->V4
300testdata/Prelude.lc 87:30-87:35 V2 300testdata/Prelude.lc 87:30-87:35 V2
301testdata/Prelude.lc 87:31-87:32 V2->V3 301testdata/Prelude.lc 87:31-87:32 V2->V3
302testdata/Prelude.lc 87:33-87:34 V2 302testdata/Prelude.lc 87:33-87:34 V2
303testdata/Prelude.lc 89:6-89:11 Type | Type->Type 303testdata/Prelude.lc 89:1-89:4 {a} -> {b} -> Tuple2 a b -> a
304testdata/Prelude.lc 89:6-91:11 Type 304testdata/Prelude.lc 89:6-89:10 V3
305testdata/Prelude.lc 89:6-91:13 Type 305testdata/Prelude.lc 89:6-89:15 V1
306testdata/Prelude.lc 90:7-90:14 Maybe V1 | {a} -> Maybe a 306testdata/Prelude.lc 89:14-89:15 V2 -> V2->V2 | V2->V2 | V4
307testdata/Prelude.lc 91:7-91:11 Maybe V3 | Type | {a} -> a -> Maybe a 307testdata/Prelude.lc 90:1-90:4 {a} -> {b} -> Tuple2 a b -> b
308testdata/Prelude.lc 91:12-91:13 Type 308testdata/Prelude.lc 90:6-90:10 V3
309testdata/Prelude.lc 95:1-95:4 {a} -> {b} -> Tuple2 a b -> a 309testdata/Prelude.lc 90:6-90:15 V0
310testdata/Prelude.lc 95:6-95:10 V3 310testdata/Prelude.lc 90:14-90:15 V2 -> V2->V2 | V2->V2 | V3
311testdata/Prelude.lc 95:6-95:15 V1 311testdata/Prelude.lc 92:12-94:34 List Type -> Type | V0->V1
312testdata/Prelude.lc 95:14-95:15 V2 -> V2->V2 | V2->V2 | V4 312testdata/Prelude.lc 92:13-92:17 Type
313testdata/Prelude.lc 96:1-96:4 {a} -> {b} -> Tuple2 a b -> b 313testdata/Prelude.lc 92:22-92:26 Type
314testdata/Prelude.lc 96:6-96:10 V3 314testdata/Prelude.lc 93:1-93:8 List Type -> Type
315testdata/Prelude.lc 96:6-96:15 V0 315testdata/Prelude.lc 93:14-93:17 Type
316testdata/Prelude.lc 96:14-96:15 V2 -> V2->V2 | V2->V2 | V3 316testdata/Prelude.lc 93:14-94:34 List Type -> Type | Type
317testdata/Prelude.lc 98:12-100:34 List Type -> Type | V0->V1 317testdata/Prelude.lc 94:18-94:34 List V1 -> Type | Type | V0 -> List V1 -> Type
318testdata/Prelude.lc 98:13-98:17 Type 318testdata/Prelude.lc 94:20-94:21 V2
319testdata/Prelude.lc 98:22-98:26 Type 319testdata/Prelude.lc 94:23-94:30 List Type -> Type
320testdata/Prelude.lc 99:1-99:8 List Type -> Type 320testdata/Prelude.lc 94:23-94:33 Type
321testdata/Prelude.lc 99:14-99:17 Type 321testdata/Prelude.lc 94:31-94:33 List Type
322testdata/Prelude.lc 99:14-100:34 List Type -> Type | Type 322testdata/Prelude.lc 96:6-96:13 List (Tuple2 String Type) -> Type | Type
323testdata/Prelude.lc 100:18-100:34 List V1 -> Type | Type | V0 -> List V1 -> Type 323testdata/Prelude.lc 96:6-97:17 Type
324testdata/Prelude.lc 100:20-100:21 V2 324testdata/Prelude.lc 96:6-97:40 Type
325testdata/Prelude.lc 100:23-100:30 List Type -> Type 325testdata/Prelude.lc 96:22-96:36 Type
326testdata/Prelude.lc 100:23-100:33 Type 326testdata/Prelude.lc 96:23-96:29 Type
327testdata/Prelude.lc 100:31-100:33 List Type 327testdata/Prelude.lc 96:31-96:35 Type
328testdata/Prelude.lc 102:6-102:13 List (Tuple2 String Type) -> Type | Type 328testdata/Prelude.lc 97:7-97:17 RecordC V2 | Type | {a : List (Tuple2 String Type)} -> 'tuptype ('map (Tuple2 String Type) Type ('snd String Type) a) -> RecordC a
329testdata/Prelude.lc 102:6-103:17 Type 329testdata/Prelude.lc 97:18-97:40 Type
330testdata/Prelude.lc 102:6-103:40 Type 330testdata/Prelude.lc 97:19-97:26 List Type -> Type
331testdata/Prelude.lc 102:22-102:36 Type 331testdata/Prelude.lc 97:27-97:39 List Type
332testdata/Prelude.lc 102:23-102:29 Type 332testdata/Prelude.lc 97:28-97:31 {a} -> {b} -> a->b -> List a -> List b
333testdata/Prelude.lc 102:31-102:35 Type 333testdata/Prelude.lc 97:28-97:35 List (Tuple2 V0 V1) -> List V2
334testdata/Prelude.lc 103:7-103:17 RecordC V2 | Type | {a : List (Tuple2 String Type)} -> 'tuptype ('map (Tuple2 String Type) Type ('snd String Type) a) -> RecordC a 334testdata/Prelude.lc 97:32-97:35 {a} -> {b} -> Tuple2 a b -> b
335testdata/Prelude.lc 103:18-103:40 Type 335testdata/Prelude.lc 97:36-97:38 List (Tuple2 String Type)
336testdata/Prelude.lc 103:19-103:26 List Type -> Type 336testdata/Prelude.lc 99:1-99:7 {a} -> (a -> a->a) -> List a -> a
337testdata/Prelude.lc 103:27-103:39 List Type 337testdata/Prelude.lc 99:11-99:12 V3
338testdata/Prelude.lc 103:28-103:31 {a} -> {b} -> a->b -> List a -> List b 338testdata/Prelude.lc 99:11-100:37 V0->V1 | V1
339testdata/Prelude.lc 103:28-103:35 List (Tuple2 V0 V1) -> List V2 339testdata/Prelude.lc 99:16-99:17 V5
340testdata/Prelude.lc 103:32-103:35 {a} -> {b} -> Tuple2 a b -> b 340testdata/Prelude.lc 99:16-100:37 List V1 -> V6 | List V2 -> V2 | V1 -> List V2 -> V2 | V3
341testdata/Prelude.lc 103:36-103:38 List (Tuple2 String Type) 341testdata/Prelude.lc 100:20-100:21 V10
342testdata/Prelude.lc 105:1-105:7 {a} -> (a -> a->a) -> List a -> a 342testdata/Prelude.lc 100:20-100:37 List V1 -> V6 | V0 -> List V1 -> V6
343testdata/Prelude.lc 105:11-105:12 V3 343testdata/Prelude.lc 100:22-100:23 V9
344testdata/Prelude.lc 105:11-106:37 V0->V1 | V1 344testdata/Prelude.lc 100:25-100:31 V15
345testdata/Prelude.lc 105:16-105:17 V5 345testdata/Prelude.lc 100:32-100:33 V13->V7
346testdata/Prelude.lc 105:16-106:37 List V1 -> V6 | List V2 -> V2 | V1 -> List V2 -> V2 | V3 346testdata/Prelude.lc 100:34-100:36 List V14
347testdata/Prelude.lc 106:20-106:21 V10 347testdata/Prelude.lc 102:1-102:6 V2
348testdata/Prelude.lc 106:20-106:37 List V1 -> V6 | V0 -> List V1 -> V6 348testdata/Prelude.lc 102:1-103:18 Bool
349testdata/Prelude.lc 106:22-106:23 V9 349testdata/Prelude.lc 102:7-102:10 Bool -> Bool->Bool
350testdata/Prelude.lc 106:25-106:31 V15 350testdata/Prelude.lc 102:15-102:16 V2
351testdata/Prelude.lc 106:32-106:33 V13->V7 351testdata/Prelude.lc 102:15-103:18 Bool->Bool
352testdata/Prelude.lc 106:34-106:36 List V14 352testdata/Prelude.lc 103:14-103:18 Bool
353testdata/Prelude.lc 108:1-108:6 V2 353testdata/Prelude.lc 107:1-107:5 V2
354testdata/Prelude.lc 108:1-109:18 Bool 354testdata/Prelude.lc 107:1-108:20 Bool
355testdata/Prelude.lc 108:7-108:10 Bool -> Bool->Bool 355testdata/Prelude.lc 107:6-107:9 Bool -> Bool->Bool
356testdata/Prelude.lc 108:15-108:16 V2 356testdata/Prelude.lc 107:14-107:15 V1
357testdata/Prelude.lc 108:15-109:18 Bool->Bool 357testdata/Prelude.lc 107:14-108:20 Bool->Bool
358testdata/Prelude.lc 109:14-109:18 Bool 358testdata/Prelude.lc 108:15-108:20 Bool
359testdata/Prelude.lc 113:1-113:5 V2 359testdata/Prelude.lc 145:1-145:13 {a} -> {b} -> a->b
360testdata/Prelude.lc 113:1-114:20 Bool 360testdata/Prelude.lc 145:30-145:31 V3
361testdata/Prelude.lc 113:6-113:9 Bool -> Bool->Bool 361testdata/Prelude.lc 145:30-145:36 Type
362testdata/Prelude.lc 113:14-113:15 V1 362testdata/Prelude.lc 145:35-145:36 Type | V2
363testdata/Prelude.lc 113:14-114:20 Bool->Bool 363testdata/Prelude.lc 147:1-147:7 {a} -> {b : Eq a} -> a -> Type -> List (Tuple2 a Type) -> Type
364testdata/Prelude.lc 114:15-114:20 Bool 364testdata/Prelude.lc 147:17-147:23 String->Type
365testdata/Prelude.lc 151:1-151:13 {a} -> {b} -> a->b 365testdata/Prelude.lc 147:17-147:26 Type
366testdata/Prelude.lc 151:30-151:31 V3 366testdata/Prelude.lc 147:17-148:70 List (Tuple2 V5 Type) -> Type | V0->V1
367testdata/Prelude.lc 147:24-147:26 String
368testdata/Prelude.lc 148:29-148:70 List V1 -> Type | Type | V0 -> List V1 -> Type | V2 -> V2->V2 | V2->V2
369testdata/Prelude.lc 148:32-148:33 V16
370testdata/Prelude.lc 148:32-148:36 V15->Bool
371testdata/Prelude.lc 148:32-148:39 Bool
372testdata/Prelude.lc 148:32-148:51 Type->Type
373testdata/Prelude.lc 148:34-148:36 {a} -> {b : Eq a} -> a -> a->Bool
374testdata/Prelude.lc 148:37-148:39 V6
375testdata/Prelude.lc 148:45-148:46 V12
376testdata/Prelude.lc 148:45-148:48 Type->Type
377testdata/Prelude.lc 148:45-148:51 Type
378testdata/Prelude.lc 148:47-148:48 Type -> Type->Type
379testdata/Prelude.lc 148:49-148:51 V4
380testdata/Prelude.lc 148:57-148:63 V12
381testdata/Prelude.lc 148:64-148:65 V13
382testdata/Prelude.lc 148:66-148:67 Type
383testdata/Prelude.lc 148:68-148:70 List V9
384testdata/Prelude.lc 151:12-153:164 V0->V1 | {a} -> {b : List (Tuple2 String Type)} -> c:String -> {d : 'isKeyC String 'TT c a b} -> RecordC b -> a
385testdata/Prelude.lc 151:28-151:105 Type
386testdata/Prelude.lc 151:29-151:43 Type
367testdata/Prelude.lc 151:30-151:36 Type 387testdata/Prelude.lc 151:30-151:36 Type
368testdata/Prelude.lc 151:35-151:36 Type | V2 388testdata/Prelude.lc 151:38-151:42 Type
369testdata/Prelude.lc 153:1-153:7 {a} -> {b : Eq a} -> a -> Type -> List (Tuple2 a Type) -> Type 389testdata/Prelude.lc 151:48-151:105 Type
370testdata/Prelude.lc 153:17-153:23 String->Type 390testdata/Prelude.lc 151:61-151:67 Type
371testdata/Prelude.lc 153:17-153:26 Type 391testdata/Prelude.lc 151:72-151:79 {a} -> {b : Eq a} -> a -> Type -> List (Tuple2 a Type) -> Type
372testdata/Prelude.lc 153:17-154:70 List (Tuple2 V5 Type) -> Type | V0->V1 392testdata/Prelude.lc 151:72-151:81 Type -> List (Tuple2 String Type) -> Type
373testdata/Prelude.lc 153:24-153:26 String 393testdata/Prelude.lc 151:72-151:83 List (Tuple2 String Type) -> Type
374testdata/Prelude.lc 154:29-154:70 List V1 -> Type | Type | V0 -> List V1 -> Type | V2 -> V2->V2 | V2->V2 394testdata/Prelude.lc 151:72-151:86 Type
375testdata/Prelude.lc 154:32-154:33 V16 395testdata/Prelude.lc 151:72-151:105 Type
376testdata/Prelude.lc 154:32-154:36 V15->Bool 396testdata/Prelude.lc 151:80-151:81 String
377testdata/Prelude.lc 154:32-154:39 Bool 397testdata/Prelude.lc 151:82-151:83 V3
378testdata/Prelude.lc 154:32-154:51 Type->Type 398testdata/Prelude.lc 151:84-151:86 List (Tuple2 String Type)
379testdata/Prelude.lc 154:34-154:36 {a} -> {b : Eq a} -> a -> a->Bool 399testdata/Prelude.lc 151:90-151:97 List (Tuple2 String Type) -> Type
380testdata/Prelude.lc 154:37-154:39 V6 400testdata/Prelude.lc 151:90-151:100 Type
381testdata/Prelude.lc 154:45-154:46 V12 401testdata/Prelude.lc 151:90-151:105 Type
382testdata/Prelude.lc 154:45-154:48 Type->Type 402testdata/Prelude.lc 151:98-151:100 List (Tuple2 String Type)
383testdata/Prelude.lc 154:45-154:51 Type 403testdata/Prelude.lc 151:104-151:105 Type
384testdata/Prelude.lc 154:47-154:48 Type -> Type->Type 404testdata/Prelude.lc 152:1-152:8 {a} -> {b : List (Tuple2 String Type)} -> c:String -> {d : 'isKeyC String 'TT c a b} -> RecordC b -> a
385testdata/Prelude.lc 154:49-154:51 V4 405testdata/Prelude.lc 152:15-152:26 List (Tuple2 String Type)
386testdata/Prelude.lc 154:57-154:63 V12 406testdata/Prelude.lc 152:15-153:164 RecordC V2 -> V4 | V4 | a:String -> {b : 'isKeyC String 'TT a V2 V1} -> RecordC V2 -> V4 | {a : 'isKeyC String 'TT V0 V2 V1} -> RecordC V2 -> V4 | {a : List (Tuple2 String Type)} -> b:String -> {c : 'isKeyC String 'TT b V2 a} -> RecordC a -> V4 | {a} -> {b : List (Tuple2 String Type)} -> c:String -> {d : 'isKeyC String 'TT c a b} -> RecordC b -> a
387testdata/Prelude.lc 154:64-154:65 V13 407testdata/Prelude.lc 152:45-152:47 RecordC V10
388testdata/Prelude.lc 154:66-154:67 Type 408testdata/Prelude.lc 152:45-153:164 List V2 -> V2 | V1 -> List V2 -> V2 | V10 | V2 -> V2->V2 | V2->V2 | V6
389testdata/Prelude.lc 154:68-154:70 List V9 409testdata/Prelude.lc 152:51-152:52 String
390testdata/Prelude.lc 157:12-159:164 V0->V1 | {a} -> {b : List (Tuple2 String Type)} -> c:String -> {d : 'isKeyC String 'TT c a b} -> RecordC b -> a 410testdata/Prelude.lc 152:51-152:55 String->Bool
391testdata/Prelude.lc 157:28-157:105 Type 411testdata/Prelude.lc 152:51-152:58 Bool
392testdata/Prelude.lc 157:29-157:43 Type 412testdata/Prelude.lc 152:51-153:164 'tuptype ('map (Tuple2 String Type) Type ('snd String Type) V1) -> V1 | V13
393testdata/Prelude.lc 157:30-157:36 Type 413testdata/Prelude.lc 152:53-152:55 {a} -> {b : Eq a} -> a -> a->Bool
394testdata/Prelude.lc 157:38-157:42 Type 414testdata/Prelude.lc 152:56-152:58 V6
395testdata/Prelude.lc 157:48-157:105 Type 415testdata/Prelude.lc 152:61-152:64 {a} -> {b} -> Tuple2 a b -> a
396testdata/Prelude.lc 157:61-157:67 Type 416testdata/Prelude.lc 152:61-152:112 V15
397testdata/Prelude.lc 157:72-157:79 {a} -> {b : Eq a} -> a -> Type -> List (Tuple2 a Type) -> Type 417testdata/Prelude.lc 152:61-153:164 Bool->V16
398testdata/Prelude.lc 157:72-157:81 Type -> List (Tuple2 String Type) -> Type 418testdata/Prelude.lc 152:65-152:112 Tuple2 V15 ('tuptype ('map (Tuple2 String Type) Type ('snd String Type) V8))
399testdata/Prelude.lc 157:72-157:83 List (Tuple2 String Type) -> Type 419testdata/Prelude.lc 152:66-152:78 {a} -> {b} -> a->b
400testdata/Prelude.lc 157:72-157:86 Type 420testdata/Prelude.lc 152:66-152:81 {a} -> V1->a
401testdata/Prelude.lc 157:72-157:105 Type 421testdata/Prelude.lc 152:66-152:108 V0 -> Tuple2 V19 ('tuptype ('map (Tuple2 String Type) Type ('snd String Type) V12))
402testdata/Prelude.lc 157:80-157:81 String 422testdata/Prelude.lc 152:83-152:108 Type
403testdata/Prelude.lc 157:82-157:83 V3 423testdata/Prelude.lc 152:84-152:85 Type
404testdata/Prelude.lc 157:84-157:86 List (Tuple2 String Type) 424testdata/Prelude.lc 152:87-152:94 List Type -> Type
405testdata/Prelude.lc 157:90-157:97 List (Tuple2 String Type) -> Type 425testdata/Prelude.lc 152:87-152:107 Type
406testdata/Prelude.lc 157:90-157:100 Type 426testdata/Prelude.lc 152:95-152:107 List Type
407testdata/Prelude.lc 157:90-157:105 Type 427testdata/Prelude.lc 152:96-152:99 {a} -> {b} -> a->b -> List a -> List b
408testdata/Prelude.lc 157:98-157:100 List (Tuple2 String Type) 428testdata/Prelude.lc 152:96-152:103 List (Tuple2 V0 V1) -> List V2
409testdata/Prelude.lc 157:104-157:105 Type 429testdata/Prelude.lc 152:100-152:103 {a} -> {b} -> Tuple2 a b -> b
410testdata/Prelude.lc 158:1-158:8 {a} -> {b : List (Tuple2 String Type)} -> c:String -> {d : 'isKeyC String 'TT c a b} -> RecordC b -> a 430testdata/Prelude.lc 152:104-152:106 List (Tuple2 String Type)
411testdata/Prelude.lc 158:15-158:26 List (Tuple2 String Type) 431testdata/Prelude.lc 152:109-152:111 'tuptype ('map (Tuple2 String Type) Type ('snd String Type) V3)
412testdata/Prelude.lc 158:15-159:164 RecordC V2 -> V4 | V4 | a:String -> {b : 'isKeyC String 'TT a V2 V1} -> RecordC V2 -> V4 | {a : 'isKeyC String 'TT V0 V2 V1} -> RecordC V2 -> V4 | {a : List (Tuple2 String Type)} -> b:String -> {c : 'isKeyC String 'TT b V2 a} -> RecordC a -> V4 | {a} -> {b : List (Tuple2 String Type)} -> c:String -> {d : 'isKeyC String 'TT c a b} -> RecordC b -> a 432testdata/Prelude.lc 153:51-153:58 {a} -> {b : List (Tuple2 String Type)} -> c:String -> {d : 'isKeyC String 'TT c a b} -> RecordC b -> a
413testdata/Prelude.lc 158:45-158:47 RecordC V10 433testdata/Prelude.lc 153:51-153:61 {a : List (Tuple2 String Type)} -> b:String -> {c : 'isKeyC String 'TT b V19 a} -> RecordC a -> V21
414testdata/Prelude.lc 158:45-159:164 List V2 -> V2 | V1 -> List V2 -> V2 | V10 | V2 -> V2->V2 | V2->V2 | V6 434testdata/Prelude.lc 153:51-153:65 a:String -> {b : 'isKeyC String 'TT a V17 V10} -> RecordC V11 -> V19
415testdata/Prelude.lc 158:51-158:52 String 435testdata/Prelude.lc 153:51-153:67 {a : 'isKeyC String 'TT V14 V16 V9} -> RecordC V10 -> V18
416testdata/Prelude.lc 158:51-158:55 String->Bool 436testdata/Prelude.lc 153:51-153:97 RecordC V9 -> V17
417testdata/Prelude.lc 158:51-158:58 Bool 437testdata/Prelude.lc 153:51-153:164 V15
418testdata/Prelude.lc 158:51-159:164 'tuptype ('map (Tuple2 String Type) Type ('snd String Type) V1) -> V1 | V13 438testdata/Prelude.lc 153:60-153:61 Type
419testdata/Prelude.lc 158:53-158:55 {a} -> {b : Eq a} -> a -> a->Bool 439testdata/Prelude.lc 153:63-153:65 List V12
420testdata/Prelude.lc 158:56-158:58 V6 440testdata/Prelude.lc 153:66-153:67 String
421testdata/Prelude.lc 158:61-158:64 {a} -> {b} -> Tuple2 a b -> a 441testdata/Prelude.lc 153:69-153:97 'isKeyC String 'TT V14 V16 V9
422testdata/Prelude.lc 158:61-158:112 V15 442testdata/Prelude.lc 153:70-153:79 {a}->a
423testdata/Prelude.lc 158:61-159:164 Bool->V16 443testdata/Prelude.lc 153:81-153:96 Type
424testdata/Prelude.lc 158:65-158:112 Tuple2 V15 ('tuptype ('map (Tuple2 String Type) Type ('snd String Type) V8)) 444testdata/Prelude.lc 153:82-153:88 {a} -> {b : Eq a} -> a -> Type -> List (Tuple2 a Type) -> Type
425testdata/Prelude.lc 158:66-158:78 {a} -> {b} -> a->b 445testdata/Prelude.lc 153:82-153:90 Type -> List (Tuple2 String Type) -> Type
426testdata/Prelude.lc 158:66-158:81 {a} -> V1->a 446testdata/Prelude.lc 153:82-153:92 List (Tuple2 String Type) -> Type
427testdata/Prelude.lc 158:66-158:108 V0 -> Tuple2 V19 ('tuptype ('map (Tuple2 String Type) Type ('snd String Type) V12)) 447testdata/Prelude.lc 153:89-153:90 String
428testdata/Prelude.lc 158:83-158:108 Type 448testdata/Prelude.lc 153:91-153:92 Type
429testdata/Prelude.lc 158:84-158:85 Type 449testdata/Prelude.lc 153:93-153:95 List (Tuple2 String Type)
430testdata/Prelude.lc 158:87-158:94 List Type -> Type 450testdata/Prelude.lc 153:98-153:164 RecordC V1
431testdata/Prelude.lc 158:87-158:107 Type 451testdata/Prelude.lc 153:99-153:109 {a : List (Tuple2 String Type)} -> 'tuptype ('map (Tuple2 String Type) Type ('snd String Type) a) -> RecordC a
432testdata/Prelude.lc 158:95-158:107 List Type 452testdata/Prelude.lc 153:110-153:163 'tuptype ('map (Tuple2 String Type) Type ('snd String Type) V9)
433testdata/Prelude.lc 158:96-158:99 {a} -> {b} -> a->b -> List a -> List b 453testdata/Prelude.lc 153:111-153:114 {a} -> {b} -> Tuple2 a b -> b
434testdata/Prelude.lc 158:96-158:103 List (Tuple2 V0 V1) -> List V2 454testdata/Prelude.lc 153:115-153:162 Tuple2 V16 ('tuptype ('map (Tuple2 String Type) Type ('snd String Type) V9))
435testdata/Prelude.lc 158:100-158:103 {a} -> {b} -> Tuple2 a b -> b 455testdata/Prelude.lc 153:116-153:128 {a} -> {b} -> a->b
436testdata/Prelude.lc 158:104-158:106 List (Tuple2 String Type) 456testdata/Prelude.lc 153:116-153:131 {a} -> V1->a
437testdata/Prelude.lc 158:109-158:111 'tuptype ('map (Tuple2 String Type) Type ('snd String Type) V3) 457testdata/Prelude.lc 153:116-153:158 V0 -> Tuple2 V20 ('tuptype ('map (Tuple2 String Type) Type ('snd String Type) V13))
438testdata/Prelude.lc 159:51-159:58 {a} -> {b : List (Tuple2 String Type)} -> c:String -> {d : 'isKeyC String 'TT c a b} -> RecordC b -> a 458testdata/Prelude.lc 153:133-153:158 Type
439testdata/Prelude.lc 159:51-159:61 {a : List (Tuple2 String Type)} -> b:String -> {c : 'isKeyC String 'TT b V19 a} -> RecordC a -> V21 459testdata/Prelude.lc 153:134-153:135 Type
440testdata/Prelude.lc 159:51-159:65 a:String -> {b : 'isKeyC String 'TT a V17 V10} -> RecordC V11 -> V19 460testdata/Prelude.lc 153:137-153:144 List Type -> Type
441testdata/Prelude.lc 159:51-159:67 {a : 'isKeyC String 'TT V14 V16 V9} -> RecordC V10 -> V18 461testdata/Prelude.lc 153:137-153:157 Type
442testdata/Prelude.lc 159:51-159:97 RecordC V9 -> V17 462testdata/Prelude.lc 153:145-153:157 List Type
443testdata/Prelude.lc 159:51-159:164 V15 463testdata/Prelude.lc 153:146-153:149 {a} -> {b} -> a->b -> List a -> List b
444testdata/Prelude.lc 159:60-159:61 Type 464testdata/Prelude.lc 153:146-153:153 List (Tuple2 V0 V1) -> List V2
445testdata/Prelude.lc 159:63-159:65 List V12 465testdata/Prelude.lc 153:150-153:153 {a} -> {b} -> Tuple2 a b -> b
446testdata/Prelude.lc 159:66-159:67 String 466testdata/Prelude.lc 153:154-153:156 List (Tuple2 String Type)
447testdata/Prelude.lc 159:69-159:97 'isKeyC String 'TT V14 V16 V9 467testdata/Prelude.lc 153:159-153:161 'tuptype ('map (Tuple2 String Type) Type ('snd String Type) V4)
448testdata/Prelude.lc 159:70-159:79 {a}->a 468testdata/Prelude.lc 157:1-157:4 Float -> Float -> Float -> VecS Float 4
449testdata/Prelude.lc 159:81-159:96 Type 469testdata/Prelude.lc 157:13-157:15 {a} -> a -> a -> a -> a -> VecS a 4
450testdata/Prelude.lc 159:82-159:88 {a} -> {b : Eq a} -> a -> Type -> List (Tuple2 a Type) -> Type 470testdata/Prelude.lc 157:13-157:17 V5 -> V6 -> V7 -> VecS V8 4
451testdata/Prelude.lc 159:82-159:90 Type -> List (Tuple2 String Type) -> Type 471testdata/Prelude.lc 157:13-157:19 V4 -> V5 -> VecS V6 4
452testdata/Prelude.lc 159:82-159:92 List (Tuple2 String Type) -> Type 472testdata/Prelude.lc 157:13-157:21 V3 -> VecS V4 4
453testdata/Prelude.lc 159:89-159:90 String 473testdata/Prelude.lc 157:13-157:25 VecS Float 4
454testdata/Prelude.lc 159:91-159:92 Type 474testdata/Prelude.lc 157:16-157:17 V6
455testdata/Prelude.lc 159:93-159:95 List (Tuple2 String Type) 475testdata/Prelude.lc 157:18-157:19 V3
456testdata/Prelude.lc 159:98-159:164 RecordC V1 476testdata/Prelude.lc 157:20-157:21 V1
457testdata/Prelude.lc 159:99-159:109 {a : List (Tuple2 String Type)} -> 'tuptype ('map (Tuple2 String Type) Type ('snd String Type) a) -> RecordC a 477testdata/Prelude.lc 157:22-157:25 Float
458testdata/Prelude.lc 159:110-159:163 'tuptype ('map (Tuple2 String Type) Type ('snd String Type) V9) 478testdata/Prelude.lc 159:1-159:6 VecS Float 4
459testdata/Prelude.lc 159:111-159:114 {a} -> {b} -> Tuple2 a b -> b 479testdata/Prelude.lc 159:11-159:14 Float -> Float -> Float -> VecS Float 4
460testdata/Prelude.lc 159:115-159:162 Tuple2 V16 ('tuptype ('map (Tuple2 String Type) Type ('snd String Type) V9)) 480testdata/Prelude.lc 159:11-159:18 Float -> Float -> VecS Float 4
461testdata/Prelude.lc 159:116-159:128 {a} -> {b} -> a->b 481testdata/Prelude.lc 159:11-159:22 Float -> VecS Float 4
462testdata/Prelude.lc 159:116-159:131 {a} -> V1->a 482testdata/Prelude.lc 159:11-159:26 VecS Float 4
463testdata/Prelude.lc 159:116-159:158 V0 -> Tuple2 V20 ('tuptype ('map (Tuple2 String Type) Type ('snd String Type) V13)) 483testdata/Prelude.lc 159:15-159:18 Float
464testdata/Prelude.lc 159:133-159:158 Type 484testdata/Prelude.lc 159:19-159:22 Float
465testdata/Prelude.lc 159:134-159:135 Type 485testdata/Prelude.lc 159:23-159:26 Float
466testdata/Prelude.lc 159:137-159:144 List Type -> Type 486testdata/Prelude.lc 160:1-160:5 VecS Float 4
467testdata/Prelude.lc 159:137-159:157 Type 487testdata/Prelude.lc 160:11-160:14 Float -> Float -> Float -> VecS Float 4
468testdata/Prelude.lc 159:145-159:157 List Type 488testdata/Prelude.lc 160:11-160:18 Float -> Float -> VecS Float 4
469testdata/Prelude.lc 159:146-159:149 {a} -> {b} -> a->b -> List a -> List b 489testdata/Prelude.lc 160:11-160:22 Float -> VecS Float 4
470testdata/Prelude.lc 159:146-159:153 List (Tuple2 V0 V1) -> List V2 490testdata/Prelude.lc 160:11-160:26 VecS Float 4
471testdata/Prelude.lc 159:150-159:153 {a} -> {b} -> Tuple2 a b -> b 491testdata/Prelude.lc 160:15-160:18 Float
472testdata/Prelude.lc 159:154-159:156 List (Tuple2 String Type) 492testdata/Prelude.lc 160:19-160:22 Float
473testdata/Prelude.lc 159:159-159:161 'tuptype ('map (Tuple2 String Type) Type ('snd String Type) V4) 493testdata/Prelude.lc 160:23-160:26 Float
474testdata/Prelude.lc 163:1-163:4 Float -> Float -> Float -> VecS Float 4 494testdata/Prelude.lc 161:1-161:7 VecS Float 4
475testdata/Prelude.lc 163:13-163:15 {a} -> a -> a -> a -> a -> VecS a 4 495testdata/Prelude.lc 161:11-161:14 Float -> Float -> Float -> VecS Float 4
476testdata/Prelude.lc 163:13-163:17 V5 -> V6 -> V7 -> VecS V8 4 496testdata/Prelude.lc 161:11-161:19 Float -> Float -> VecS Float 4
477testdata/Prelude.lc 163:13-163:19 V4 -> V5 -> VecS V6 4 497testdata/Prelude.lc 161:11-161:24 Float -> VecS Float 4
478testdata/Prelude.lc 163:13-163:21 V3 -> VecS V4 4 498testdata/Prelude.lc 161:11-161:29 VecS Float 4
479testdata/Prelude.lc 163:13-163:25 VecS Float 4 499testdata/Prelude.lc 161:15-161:19 Float
480testdata/Prelude.lc 163:16-163:17 V6 500testdata/Prelude.lc 161:20-161:24 Float
481testdata/Prelude.lc 163:18-163:19 V3 501testdata/Prelude.lc 161:25-161:29 Float
482testdata/Prelude.lc 163:20-163:21 V1 502testdata/Prelude.lc 162:1-162:6 VecS Float 4
483testdata/Prelude.lc 163:22-163:25 Float 503testdata/Prelude.lc 162:11-162:14 Float -> Float -> Float -> VecS Float 4
504testdata/Prelude.lc 162:11-162:18 Float -> Float -> VecS Float 4
505testdata/Prelude.lc 162:11-162:22 Float -> VecS Float 4
506testdata/Prelude.lc 162:11-162:26 VecS Float 4
507testdata/Prelude.lc 162:15-162:18 Float
508testdata/Prelude.lc 162:19-162:22 Float
509testdata/Prelude.lc 162:23-162:26 Float
510testdata/Prelude.lc 163:1-163:7 VecS Float 4
511testdata/Prelude.lc 163:11-163:14 Float -> Float -> Float -> VecS Float 4
512testdata/Prelude.lc 163:11-163:18 Float -> Float -> VecS Float 4
513testdata/Prelude.lc 163:11-163:22 Float -> VecS Float 4
514testdata/Prelude.lc 163:11-163:26 VecS Float 4
515testdata/Prelude.lc 163:15-163:18 Float
516testdata/Prelude.lc 163:19-163:22 Float
517testdata/Prelude.lc 163:23-163:26 Float
518testdata/Prelude.lc 164:1-164:4 VecS Float 4
519testdata/Prelude.lc 164:11-164:14 Float -> Float -> Float -> VecS Float 4
520testdata/Prelude.lc 164:11-164:18 Float -> Float -> VecS Float 4
521testdata/Prelude.lc 164:11-164:22 Float -> VecS Float 4
522testdata/Prelude.lc 164:11-164:26 VecS Float 4
523testdata/Prelude.lc 164:15-164:18 Float
524testdata/Prelude.lc 164:19-164:22 Float
525testdata/Prelude.lc 164:23-164:26 Float
484testdata/Prelude.lc 165:1-165:6 VecS Float 4 526testdata/Prelude.lc 165:1-165:6 VecS Float 4
485testdata/Prelude.lc 165:11-165:14 Float -> Float -> Float -> VecS Float 4 527testdata/Prelude.lc 165:11-165:14 Float -> Float -> Float -> VecS Float 4
486testdata/Prelude.lc 165:11-165:18 Float -> Float -> VecS Float 4 528testdata/Prelude.lc 165:11-165:18 Float -> Float -> VecS Float 4
@@ -489,7 +531,7 @@ testdata/Prelude.lc 165:11-165:26 VecS Float 4
489testdata/Prelude.lc 165:15-165:18 Float 531testdata/Prelude.lc 165:15-165:18 Float
490testdata/Prelude.lc 165:19-165:22 Float 532testdata/Prelude.lc 165:19-165:22 Float
491testdata/Prelude.lc 165:23-165:26 Float 533testdata/Prelude.lc 165:23-165:26 Float
492testdata/Prelude.lc 166:1-166:5 VecS Float 4 534testdata/Prelude.lc 166:1-166:7 VecS Float 4
493testdata/Prelude.lc 166:11-166:14 Float -> Float -> Float -> VecS Float 4 535testdata/Prelude.lc 166:11-166:14 Float -> Float -> Float -> VecS Float 4
494testdata/Prelude.lc 166:11-166:18 Float -> Float -> VecS Float 4 536testdata/Prelude.lc 166:11-166:18 Float -> Float -> VecS Float 4
495testdata/Prelude.lc 166:11-166:22 Float -> VecS Float 4 537testdata/Prelude.lc 166:11-166:22 Float -> VecS Float 4
@@ -497,15 +539,15 @@ testdata/Prelude.lc 166:11-166:26 VecS Float 4
497testdata/Prelude.lc 166:15-166:18 Float 539testdata/Prelude.lc 166:15-166:18 Float
498testdata/Prelude.lc 166:19-166:22 Float 540testdata/Prelude.lc 166:19-166:22 Float
499testdata/Prelude.lc 166:23-166:26 Float 541testdata/Prelude.lc 166:23-166:26 Float
500testdata/Prelude.lc 167:1-167:7 VecS Float 4 542testdata/Prelude.lc 167:1-167:6 VecS Float 4
501testdata/Prelude.lc 167:11-167:14 Float -> Float -> Float -> VecS Float 4 543testdata/Prelude.lc 167:11-167:14 Float -> Float -> Float -> VecS Float 4
502testdata/Prelude.lc 167:11-167:19 Float -> Float -> VecS Float 4 544testdata/Prelude.lc 167:11-167:18 Float -> Float -> VecS Float 4
503testdata/Prelude.lc 167:11-167:24 Float -> VecS Float 4 545testdata/Prelude.lc 167:11-167:22 Float -> VecS Float 4
504testdata/Prelude.lc 167:11-167:29 VecS Float 4 546testdata/Prelude.lc 167:11-167:26 VecS Float 4
505testdata/Prelude.lc 167:15-167:19 Float 547testdata/Prelude.lc 167:15-167:18 Float
506testdata/Prelude.lc 167:20-167:24 Float 548testdata/Prelude.lc 167:19-167:22 Float
507testdata/Prelude.lc 167:25-167:29 Float 549testdata/Prelude.lc 167:23-167:26 Float
508testdata/Prelude.lc 168:1-168:6 VecS Float 4 550testdata/Prelude.lc 168:1-168:5 VecS Float 4
509testdata/Prelude.lc 168:11-168:14 Float -> Float -> Float -> VecS Float 4 551testdata/Prelude.lc 168:11-168:14 Float -> Float -> Float -> VecS Float 4
510testdata/Prelude.lc 168:11-168:18 Float -> Float -> VecS Float 4 552testdata/Prelude.lc 168:11-168:18 Float -> Float -> VecS Float 4
511testdata/Prelude.lc 168:11-168:22 Float -> VecS Float 4 553testdata/Prelude.lc 168:11-168:22 Float -> VecS Float 4
@@ -513,7 +555,7 @@ testdata/Prelude.lc 168:11-168:26 VecS Float 4
513testdata/Prelude.lc 168:15-168:18 Float 555testdata/Prelude.lc 168:15-168:18 Float
514testdata/Prelude.lc 168:19-168:22 Float 556testdata/Prelude.lc 168:19-168:22 Float
515testdata/Prelude.lc 168:23-168:26 Float 557testdata/Prelude.lc 168:23-168:26 Float
516testdata/Prelude.lc 169:1-169:7 VecS Float 4 558testdata/Prelude.lc 169:1-169:5 VecS Float 4
517testdata/Prelude.lc 169:11-169:14 Float -> Float -> Float -> VecS Float 4 559testdata/Prelude.lc 169:11-169:14 Float -> Float -> Float -> VecS Float 4
518testdata/Prelude.lc 169:11-169:18 Float -> Float -> VecS Float 4 560testdata/Prelude.lc 169:11-169:18 Float -> Float -> VecS Float 4
519testdata/Prelude.lc 169:11-169:22 Float -> VecS Float 4 561testdata/Prelude.lc 169:11-169:22 Float -> VecS Float 4
@@ -521,7 +563,7 @@ testdata/Prelude.lc 169:11-169:26 VecS Float 4
521testdata/Prelude.lc 169:15-169:18 Float 563testdata/Prelude.lc 169:15-169:18 Float
522testdata/Prelude.lc 169:19-169:22 Float 564testdata/Prelude.lc 169:19-169:22 Float
523testdata/Prelude.lc 169:23-169:26 Float 565testdata/Prelude.lc 169:23-169:26 Float
524testdata/Prelude.lc 170:1-170:4 VecS Float 4 566testdata/Prelude.lc 170:1-170:5 VecS Float 4
525testdata/Prelude.lc 170:11-170:14 Float -> Float -> Float -> VecS Float 4 567testdata/Prelude.lc 170:11-170:14 Float -> Float -> Float -> VecS Float 4
526testdata/Prelude.lc 170:11-170:18 Float -> Float -> VecS Float 4 568testdata/Prelude.lc 170:11-170:18 Float -> Float -> VecS Float 4
527testdata/Prelude.lc 170:11-170:22 Float -> VecS Float 4 569testdata/Prelude.lc 170:11-170:22 Float -> VecS Float 4
@@ -529,7 +571,7 @@ testdata/Prelude.lc 170:11-170:26 VecS Float 4
529testdata/Prelude.lc 170:15-170:18 Float 571testdata/Prelude.lc 170:15-170:18 Float
530testdata/Prelude.lc 170:19-170:22 Float 572testdata/Prelude.lc 170:19-170:22 Float
531testdata/Prelude.lc 170:23-170:26 Float 573testdata/Prelude.lc 170:23-170:26 Float
532testdata/Prelude.lc 171:1-171:6 VecS Float 4 574testdata/Prelude.lc 171:1-171:5 VecS Float 4
533testdata/Prelude.lc 171:11-171:14 Float -> Float -> Float -> VecS Float 4 575testdata/Prelude.lc 171:11-171:14 Float -> Float -> Float -> VecS Float 4
534testdata/Prelude.lc 171:11-171:18 Float -> Float -> VecS Float 4 576testdata/Prelude.lc 171:11-171:18 Float -> Float -> VecS Float 4
535testdata/Prelude.lc 171:11-171:22 Float -> VecS Float 4 577testdata/Prelude.lc 171:11-171:22 Float -> VecS Float 4
@@ -537,7 +579,7 @@ testdata/Prelude.lc 171:11-171:26 VecS Float 4
537testdata/Prelude.lc 171:15-171:18 Float 579testdata/Prelude.lc 171:15-171:18 Float
538testdata/Prelude.lc 171:19-171:22 Float 580testdata/Prelude.lc 171:19-171:22 Float
539testdata/Prelude.lc 171:23-171:26 Float 581testdata/Prelude.lc 171:23-171:26 Float
540testdata/Prelude.lc 172:1-172:7 VecS Float 4 582testdata/Prelude.lc 172:1-172:5 VecS Float 4
541testdata/Prelude.lc 172:11-172:14 Float -> Float -> Float -> VecS Float 4 583testdata/Prelude.lc 172:11-172:14 Float -> Float -> Float -> VecS Float 4
542testdata/Prelude.lc 172:11-172:18 Float -> Float -> VecS Float 4 584testdata/Prelude.lc 172:11-172:18 Float -> Float -> VecS Float 4
543testdata/Prelude.lc 172:11-172:22 Float -> VecS Float 4 585testdata/Prelude.lc 172:11-172:22 Float -> VecS Float 4
@@ -545,7 +587,7 @@ testdata/Prelude.lc 172:11-172:26 VecS Float 4
545testdata/Prelude.lc 172:15-172:18 Float 587testdata/Prelude.lc 172:15-172:18 Float
546testdata/Prelude.lc 172:19-172:22 Float 588testdata/Prelude.lc 172:19-172:22 Float
547testdata/Prelude.lc 172:23-172:26 Float 589testdata/Prelude.lc 172:23-172:26 Float
548testdata/Prelude.lc 173:1-173:6 VecS Float 4 590testdata/Prelude.lc 173:1-173:7 VecS Float 4
549testdata/Prelude.lc 173:11-173:14 Float -> Float -> Float -> VecS Float 4 591testdata/Prelude.lc 173:11-173:14 Float -> Float -> Float -> VecS Float 4
550testdata/Prelude.lc 173:11-173:18 Float -> Float -> VecS Float 4 592testdata/Prelude.lc 173:11-173:18 Float -> Float -> VecS Float 4
551testdata/Prelude.lc 173:11-173:22 Float -> VecS Float 4 593testdata/Prelude.lc 173:11-173:22 Float -> VecS Float 4
@@ -553,7 +595,7 @@ testdata/Prelude.lc 173:11-173:26 VecS Float 4
553testdata/Prelude.lc 173:15-173:18 Float 595testdata/Prelude.lc 173:15-173:18 Float
554testdata/Prelude.lc 173:19-173:22 Float 596testdata/Prelude.lc 173:19-173:22 Float
555testdata/Prelude.lc 173:23-173:26 Float 597testdata/Prelude.lc 173:23-173:26 Float
556testdata/Prelude.lc 174:1-174:5 VecS Float 4 598testdata/Prelude.lc 174:1-174:8 VecS Float 4
557testdata/Prelude.lc 174:11-174:14 Float -> Float -> Float -> VecS Float 4 599testdata/Prelude.lc 174:11-174:14 Float -> Float -> Float -> VecS Float 4
558testdata/Prelude.lc 174:11-174:18 Float -> Float -> VecS Float 4 600testdata/Prelude.lc 174:11-174:18 Float -> Float -> VecS Float 4
559testdata/Prelude.lc 174:11-174:22 Float -> VecS Float 4 601testdata/Prelude.lc 174:11-174:22 Float -> VecS Float 4
@@ -561,580 +603,532 @@ testdata/Prelude.lc 174:11-174:26 VecS Float 4
561testdata/Prelude.lc 174:15-174:18 Float 603testdata/Prelude.lc 174:15-174:18 Float
562testdata/Prelude.lc 174:19-174:22 Float 604testdata/Prelude.lc 174:19-174:22 Float
563testdata/Prelude.lc 174:23-174:26 Float 605testdata/Prelude.lc 174:23-174:26 Float
564testdata/Prelude.lc 175:1-175:5 VecS Float 4 606testdata/Prelude.lc 176:1-176:12 {a:Nat} -> {b} -> {c} -> {d : Num b} -> {e : c ~ VecScalar a b} -> c -> Image 1 (Color c)
565testdata/Prelude.lc 175:11-175:14 Float -> Float -> Float -> VecS Float 4 607testdata/Prelude.lc 176:15-176:25 {a:Nat} -> {b:Nat} -> {c} -> {d} -> {e : Num c} -> {f : d ~ VecScalar b c} -> d -> Image a (Color d)
566testdata/Prelude.lc 175:11-175:18 Float -> Float -> VecS Float 4 608testdata/Prelude.lc 176:15-176:28 {a:Nat} -> {b} -> {c} -> {d : Num b} -> {e : c ~ VecScalar a b} -> c -> Image 1 (Color c)
567testdata/Prelude.lc 175:11-175:22 Float -> VecS Float 4 609testdata/Prelude.lc 176:27-176:28 V1
568testdata/Prelude.lc 175:11-175:26 VecS Float 4 610testdata/Prelude.lc 177:1-177:12 {a:Nat} -> {b} -> {c} -> {d : Num b} -> {e : c ~ VecScalar a b} -> c -> Image 2 (Color c)
569testdata/Prelude.lc 175:15-175:18 Float 611testdata/Prelude.lc 177:15-177:25 {a:Nat} -> {b:Nat} -> {c} -> {d} -> {e : Num c} -> {f : d ~ VecScalar b c} -> d -> Image a (Color d)
570testdata/Prelude.lc 175:19-175:22 Float 612testdata/Prelude.lc 177:15-177:28 {a:Nat} -> {b} -> {c} -> {d : Num b} -> {e : c ~ VecScalar a b} -> c -> Image 2 (Color c)
571testdata/Prelude.lc 175:23-175:26 Float 613testdata/Prelude.lc 177:27-177:28 V1
572testdata/Prelude.lc 176:1-176:5 VecS Float 4 614testdata/Prelude.lc 179:1-179:12 Float -> Image 1 (Depth Float)
573testdata/Prelude.lc 176:11-176:14 Float -> Float -> Float -> VecS Float 4 615testdata/Prelude.lc 179:15-179:25 {a:Nat} -> Float -> Image a (Depth Float)
574testdata/Prelude.lc 176:11-176:18 Float -> Float -> VecS Float 4 616testdata/Prelude.lc 179:15-179:28 Float -> Image 1 (Depth Float)
575testdata/Prelude.lc 176:11-176:22 Float -> VecS Float 4 617testdata/Prelude.lc 179:27-179:28 V1
576testdata/Prelude.lc 176:11-176:26 VecS Float 4 618testdata/Prelude.lc 181:13-181:16 Nat -> Type->Type
577testdata/Prelude.lc 176:15-176:18 Float 619testdata/Prelude.lc 181:13-181:18 Type->Type
578testdata/Prelude.lc 176:19-176:22 Float 620testdata/Prelude.lc 181:13-181:24 Type
579testdata/Prelude.lc 176:23-176:26 Float 621testdata/Prelude.lc 181:17-181:18 V1
580testdata/Prelude.lc 177:1-177:5 VecS Float 4 622testdata/Prelude.lc 181:19-181:24 Type
581testdata/Prelude.lc 177:11-177:14 Float -> Float -> Float -> VecS Float 4 623testdata/Prelude.lc 181:28-181:31 Nat -> Type->Type
582testdata/Prelude.lc 177:11-177:18 Float -> Float -> VecS Float 4 624testdata/Prelude.lc 181:28-181:33 Type->Type
583testdata/Prelude.lc 177:11-177:22 Float -> VecS Float 4 625testdata/Prelude.lc 181:28-181:39 Type
584testdata/Prelude.lc 177:11-177:26 VecS Float 4 626testdata/Prelude.lc 181:32-181:33 V1
585testdata/Prelude.lc 177:15-177:18 Float 627testdata/Prelude.lc 181:34-181:39 Type
586testdata/Prelude.lc 177:19-177:22 Float 628testdata/Prelude.lc 182:1-182:9 VecS Float 3 -> VecS Float 4
587testdata/Prelude.lc 177:23-177:26 Float 629testdata/Prelude.lc 182:14-182:16 {a} -> a -> a -> a -> a -> VecS a 4
588testdata/Prelude.lc 178:1-178:5 VecS Float 4 630testdata/Prelude.lc 182:14-182:20 Float -> Float -> Float -> VecS Float 4
589testdata/Prelude.lc 178:11-178:14 Float -> Float -> Float -> VecS Float 4 631testdata/Prelude.lc 182:14-182:24 Float -> Float -> VecS Float 4
590testdata/Prelude.lc 178:11-178:18 Float -> Float -> VecS Float 4 632testdata/Prelude.lc 182:14-182:28 Float -> VecS Float 4
591testdata/Prelude.lc 178:11-178:22 Float -> VecS Float 4 633testdata/Prelude.lc 182:14-182:30 VecS Float 3 -> VecS Float 4 | VecS Float 4
592testdata/Prelude.lc 178:11-178:26 VecS Float 4 634testdata/Prelude.lc 182:17-182:18 VecS Float 3
593testdata/Prelude.lc 178:15-178:18 Float 635testdata/Prelude.lc 182:17-182:20 Float
594testdata/Prelude.lc 178:19-178:22 Float 636testdata/Prelude.lc 182:21-182:22 VecS Float 3
595testdata/Prelude.lc 178:23-178:26 Float 637testdata/Prelude.lc 182:21-182:24 Float
596testdata/Prelude.lc 179:1-179:7 VecS Float 4 638testdata/Prelude.lc 182:25-182:26 VecS Float 3
597testdata/Prelude.lc 179:11-179:14 Float -> Float -> Float -> VecS Float 4 639testdata/Prelude.lc 182:25-182:28 Float
598testdata/Prelude.lc 179:11-179:18 Float -> Float -> VecS Float 4 640testdata/Prelude.lc 182:29-182:30 V1
599testdata/Prelude.lc 179:11-179:22 Float -> VecS Float 4 641testdata/Prelude.lc 189:1-189:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
600testdata/Prelude.lc 179:11-179:26 VecS Float 4 642testdata/Prelude.lc 189:11-189:22 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
601testdata/Prelude.lc 179:15-179:18 Float 643testdata/Prelude.lc 190:1-190:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
602testdata/Prelude.lc 179:19-179:22 Float 644testdata/Prelude.lc 190:11-190:22 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
603testdata/Prelude.lc 179:23-179:26 Float 645testdata/Prelude.lc 191:1-191:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
604testdata/Prelude.lc 180:1-180:8 VecS Float 4 646testdata/Prelude.lc 191:7-191:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
605testdata/Prelude.lc 180:11-180:14 Float -> Float -> Float -> VecS Float 4 647testdata/Prelude.lc 192:1-192:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
606testdata/Prelude.lc 180:11-180:18 Float -> Float -> VecS Float 4 648testdata/Prelude.lc 192:7-192:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
607testdata/Prelude.lc 180:11-180:22 Float -> VecS Float 4 649testdata/Prelude.lc 193:1-193:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
608testdata/Prelude.lc 180:11-180:26 VecS Float 4 650testdata/Prelude.lc 193:7-193:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
609testdata/Prelude.lc 180:15-180:18 Float 651testdata/Prelude.lc 194:1-194:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
610testdata/Prelude.lc 180:19-180:22 Float 652testdata/Prelude.lc 194:8-194:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
611testdata/Prelude.lc 180:23-180:26 Float 653testdata/Prelude.lc 195:1-195:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
612testdata/Prelude.lc 182:1-182:12 {a:Nat} -> {b} -> {c} -> {d : Num b} -> {e : c ~ VecScalar a b} -> c -> Image 1 (Color c) 654testdata/Prelude.lc 195:8-195:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
613testdata/Prelude.lc 182:15-182:25 {a:Nat} -> {b:Nat} -> {c} -> {d} -> {e : Num c} -> {f : d ~ VecScalar b c} -> d -> Image a (Color d) 655testdata/Prelude.lc 196:1-196:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
614testdata/Prelude.lc 182:15-182:28 {a:Nat} -> {b} -> {c} -> {d : Num b} -> {e : c ~ VecScalar a b} -> c -> Image 1 (Color c) 656testdata/Prelude.lc 196:8-196:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
615testdata/Prelude.lc 182:27-182:28 V1 657testdata/Prelude.lc 197:1-197:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
616testdata/Prelude.lc 183:1-183:12 {a:Nat} -> {b} -> {c} -> {d : Num b} -> {e : c ~ VecScalar a b} -> c -> Image 2 (Color c) 658testdata/Prelude.lc 197:8-197:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
617testdata/Prelude.lc 183:15-183:25 {a:Nat} -> {b:Nat} -> {c} -> {d} -> {e : Num c} -> {f : d ~ VecScalar b c} -> d -> Image a (Color d) 659testdata/Prelude.lc 198:1-198:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
618testdata/Prelude.lc 183:15-183:28 {a:Nat} -> {b} -> {c} -> {d : Num b} -> {e : c ~ VecScalar a b} -> c -> Image 2 (Color c) 660testdata/Prelude.lc 198:9-198:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
619testdata/Prelude.lc 183:27-183:28 V1 661testdata/Prelude.lc 199:1-199:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
620testdata/Prelude.lc 185:1-185:12 Float -> Image 1 (Depth Float) 662testdata/Prelude.lc 199:8-199:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
621testdata/Prelude.lc 185:15-185:25 {a:Nat} -> Float -> Image a (Depth Float) 663testdata/Prelude.lc 200:1-200:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
622testdata/Prelude.lc 185:15-185:28 Float -> Image 1 (Depth Float) 664testdata/Prelude.lc 200:9-200:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
623testdata/Prelude.lc 185:27-185:28 V1
624testdata/Prelude.lc 187:13-187:16 Nat -> Type->Type
625testdata/Prelude.lc 187:13-187:18 Type->Type
626testdata/Prelude.lc 187:13-187:24 Type
627testdata/Prelude.lc 187:17-187:18 V1
628testdata/Prelude.lc 187:19-187:24 Type
629testdata/Prelude.lc 187:28-187:31 Nat -> Type->Type
630testdata/Prelude.lc 187:28-187:33 Type->Type
631testdata/Prelude.lc 187:28-187:39 Type
632testdata/Prelude.lc 187:32-187:33 V1
633testdata/Prelude.lc 187:34-187:39 Type
634testdata/Prelude.lc 188:1-188:9 VecS Float 3 -> VecS Float 4
635testdata/Prelude.lc 188:14-188:16 {a} -> a -> a -> a -> a -> VecS a 4
636testdata/Prelude.lc 188:14-188:20 Float -> Float -> Float -> VecS Float 4
637testdata/Prelude.lc 188:14-188:24 Float -> Float -> VecS Float 4
638testdata/Prelude.lc 188:14-188:28 Float -> VecS Float 4
639testdata/Prelude.lc 188:14-188:30 VecS Float 3 -> VecS Float 4 | VecS Float 4
640testdata/Prelude.lc 188:17-188:18 VecS Float 3
641testdata/Prelude.lc 188:17-188:20 Float
642testdata/Prelude.lc 188:21-188:22 VecS Float 3
643testdata/Prelude.lc 188:21-188:24 Float
644testdata/Prelude.lc 188:25-188:26 VecS Float 3
645testdata/Prelude.lc 188:25-188:28 Float
646testdata/Prelude.lc 188:29-188:30 V1
647testdata/Prelude.lc 195:1-195:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
648testdata/Prelude.lc 195:11-195:22 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
649testdata/Prelude.lc 196:1-196:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
650testdata/Prelude.lc 196:11-196:22 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
651testdata/Prelude.lc 197:1-197:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
652testdata/Prelude.lc 197:7-197:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
653testdata/Prelude.lc 198:1-198:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
654testdata/Prelude.lc 198:7-198:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
655testdata/Prelude.lc 199:1-199:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
656testdata/Prelude.lc 199:7-199:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
657testdata/Prelude.lc 200:1-200:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
658testdata/Prelude.lc 200:8-200:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
659testdata/Prelude.lc 201:1-201:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 665testdata/Prelude.lc 201:1-201:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
660testdata/Prelude.lc 201:8-201:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 666testdata/Prelude.lc 201:8-201:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
661testdata/Prelude.lc 202:1-202:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 667testdata/Prelude.lc 202:1-202:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
662testdata/Prelude.lc 202:8-202:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 668testdata/Prelude.lc 202:9-202:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
663testdata/Prelude.lc 203:1-203:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 669testdata/Prelude.lc 203:1-203:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a
664testdata/Prelude.lc 203:8-203:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 670testdata/Prelude.lc 203:9-203:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a
665testdata/Prelude.lc 204:1-204:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 671testdata/Prelude.lc 206:1-206:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a
666testdata/Prelude.lc 204:9-204:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 672testdata/Prelude.lc 206:7-206:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a
667testdata/Prelude.lc 205:1-205:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 673testdata/Prelude.lc 207:1-207:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
668testdata/Prelude.lc 205:8-205:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 674testdata/Prelude.lc 207:7-207:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
669testdata/Prelude.lc 206:1-206:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 675testdata/Prelude.lc 208:1-208:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
670testdata/Prelude.lc 206:9-206:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 676testdata/Prelude.lc 208:7-208:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
671testdata/Prelude.lc 207:1-207:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 677testdata/Prelude.lc 209:1-209:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
672testdata/Prelude.lc 207:8-207:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 678testdata/Prelude.lc 209:8-209:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
673testdata/Prelude.lc 208:1-208:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 679testdata/Prelude.lc 210:1-210:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
674testdata/Prelude.lc 208:9-208:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 680testdata/Prelude.lc 210:8-210:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
675testdata/Prelude.lc 209:1-209:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a 681testdata/Prelude.lc 211:1-211:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
676testdata/Prelude.lc 209:9-209:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a 682testdata/Prelude.lc 211:8-211:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
677testdata/Prelude.lc 212:1-212:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a 683testdata/Prelude.lc 212:1-212:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
678testdata/Prelude.lc 212:7-212:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a 684testdata/Prelude.lc 212:15-212:26 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
679testdata/Prelude.lc 213:1-213:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 685testdata/Prelude.lc 215:1-215:4 {a} -> {b} -> {c:Nat} -> {d : Signed a} -> {e : b ~ VecScalar c a} -> b->b
680testdata/Prelude.lc 213:7-213:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 686testdata/Prelude.lc 215:7-215:14 {a} -> {b} -> {c:Nat} -> {d : Signed a} -> {e : b ~ VecScalar c a} -> b->b
681testdata/Prelude.lc 214:1-214:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 687testdata/Prelude.lc 216:1-216:5 {a} -> {b} -> {c:Nat} -> {d : Signed a} -> {e : b ~ VecScalar c a} -> b->b
682testdata/Prelude.lc 214:7-214:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 688testdata/Prelude.lc 216:8-216:16 {a} -> {b} -> {c:Nat} -> {d : Signed a} -> {e : b ~ VecScalar c a} -> b->b
683testdata/Prelude.lc 215:1-215:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 689testdata/Prelude.lc 217:1-217:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
684testdata/Prelude.lc 215:8-215:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 690testdata/Prelude.lc 217:9-217:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
685testdata/Prelude.lc 216:1-216:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 691testdata/Prelude.lc 218:1-218:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
686testdata/Prelude.lc 216:8-216:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 692testdata/Prelude.lc 218:9-218:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
687testdata/Prelude.lc 217:1-217:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 693testdata/Prelude.lc 219:1-219:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
688testdata/Prelude.lc 217:8-217:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 694testdata/Prelude.lc 219:9-219:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
689testdata/Prelude.lc 218:1-218:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 695testdata/Prelude.lc 220:1-220:10 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
690testdata/Prelude.lc 218:15-218:26 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 696testdata/Prelude.lc 220:13-220:26 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
691testdata/Prelude.lc 221:1-221:4 {a} -> {b} -> {c:Nat} -> {d : Signed a} -> {e : b ~ VecScalar c a} -> b->b 697testdata/Prelude.lc 221:1-221:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
692testdata/Prelude.lc 221:7-221:14 {a} -> {b} -> {c:Nat} -> {d : Signed a} -> {e : b ~ VecScalar c a} -> b->b 698testdata/Prelude.lc 221:8-221:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
693testdata/Prelude.lc 222:1-222:5 {a} -> {b} -> {c:Nat} -> {d : Signed a} -> {e : b ~ VecScalar c a} -> b->b 699testdata/Prelude.lc 222:1-222:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
694testdata/Prelude.lc 222:8-222:16 {a} -> {b} -> {c:Nat} -> {d : Signed a} -> {e : b ~ VecScalar c a} -> b->b 700testdata/Prelude.lc 222:9-222:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
695testdata/Prelude.lc 223:1-223:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 701testdata/Prelude.lc 223:1-223:4 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b
696testdata/Prelude.lc 223:9-223:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 702testdata/Prelude.lc 223:7-223:14 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b
697testdata/Prelude.lc 224:1-224:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 703testdata/Prelude.lc 224:1-224:4 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b
698testdata/Prelude.lc 224:9-224:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 704testdata/Prelude.lc 224:7-224:14 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b
699testdata/Prelude.lc 225:1-225:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 705testdata/Prelude.lc 225:1-225:4 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b
700testdata/Prelude.lc 225:9-225:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 706testdata/Prelude.lc 225:7-225:14 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b
701testdata/Prelude.lc 226:1-226:10 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 707testdata/Prelude.lc 226:1-226:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> Tuple2 a a
702testdata/Prelude.lc 226:13-226:26 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 708testdata/Prelude.lc 226:8-226:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> Tuple2 a a
703testdata/Prelude.lc 227:1-227:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 709testdata/Prelude.lc 227:1-227:6 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b -> b->b
704testdata/Prelude.lc 227:8-227:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 710testdata/Prelude.lc 227:9-227:18 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b -> b->b
705testdata/Prelude.lc 228:1-228:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 711testdata/Prelude.lc 228:1-228:7 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a -> a->b
706testdata/Prelude.lc 228:9-228:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 712testdata/Prelude.lc 228:10-228:20 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a -> a->b
707testdata/Prelude.lc 229:1-229:4 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b 713testdata/Prelude.lc 229:1-229:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a
708testdata/Prelude.lc 229:7-229:14 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b 714testdata/Prelude.lc 229:7-229:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a
709testdata/Prelude.lc 230:1-230:4 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b 715testdata/Prelude.lc 230:1-230:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> Float->a
710testdata/Prelude.lc 230:7-230:14 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b 716testdata/Prelude.lc 230:8-230:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> Float->a
711testdata/Prelude.lc 231:1-231:4 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b 717testdata/Prelude.lc 231:1-231:5 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a -> a -> c->a
712testdata/Prelude.lc 231:7-231:14 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b 718testdata/Prelude.lc 231:8-231:16 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a -> a -> c->a
713testdata/Prelude.lc 232:1-232:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> Tuple2 a a 719testdata/Prelude.lc 232:1-232:5 {a} -> {b:Nat} -> {c : a ~ VecS Float b} -> a -> a->a
714testdata/Prelude.lc 232:8-232:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> Tuple2 a a 720testdata/Prelude.lc 232:8-232:16 {a} -> {b:Nat} -> {c : a ~ VecS Float b} -> a -> a->a
715testdata/Prelude.lc 233:1-233:6 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b -> b->b 721testdata/Prelude.lc 233:1-233:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> Float -> a->a
716testdata/Prelude.lc 233:9-233:18 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b -> b->b 722testdata/Prelude.lc 233:9-233:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> Float -> a->a
717testdata/Prelude.lc 234:1-234:7 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a -> a->b 723testdata/Prelude.lc 234:1-234:11 {a} -> {b:Nat} -> {c : a ~ VecS Float b} -> a -> a -> a->a
718testdata/Prelude.lc 234:10-234:20 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a -> a->b 724testdata/Prelude.lc 234:14-234:28 {a} -> {b:Nat} -> {c : a ~ VecS Float b} -> a -> a -> a->a
719testdata/Prelude.lc 235:1-235:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a 725testdata/Prelude.lc 235:1-235:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> Float -> Float -> a->a
720testdata/Prelude.lc 235:7-235:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a 726testdata/Prelude.lc 235:15-235:30 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> Float -> Float -> a->a
721testdata/Prelude.lc 236:1-236:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> Float->a 727testdata/Prelude.lc 236:1-236:6 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a->c
722testdata/Prelude.lc 236:8-236:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> Float->a 728testdata/Prelude.lc 236:9-236:18 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a->c
723testdata/Prelude.lc 237:1-237:5 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a -> a -> c->a 729testdata/Prelude.lc 237:1-237:6 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a->c
724testdata/Prelude.lc 237:8-237:16 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a -> a -> c->a 730testdata/Prelude.lc 237:9-237:18 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a->c
725testdata/Prelude.lc 238:1-238:5 {a} -> {b:Nat} -> {c : a ~ VecS Float b} -> a -> a->a 731testdata/Prelude.lc 239:1-239:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
726testdata/Prelude.lc 238:8-238:16 {a} -> {b:Nat} -> {c : a ~ VecS Float b} -> a -> a->a 732testdata/Prelude.lc 239:8-239:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
727testdata/Prelude.lc 239:1-239:6 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> Float -> a->a 733testdata/Prelude.lc 240:1-240:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
728testdata/Prelude.lc 239:9-239:18 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> Float -> a->a 734testdata/Prelude.lc 240:8-240:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
729testdata/Prelude.lc 240:1-240:11 {a} -> {b:Nat} -> {c : a ~ VecS Float b} -> a -> a -> a->a 735testdata/Prelude.lc 241:1-241:7 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
730testdata/Prelude.lc 240:14-240:28 {a} -> {b:Nat} -> {c : a ~ VecS Float b} -> a -> a -> a->a 736testdata/Prelude.lc 241:10-241:20 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
731testdata/Prelude.lc 241:1-241:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> Float -> Float -> a->a 737testdata/Prelude.lc 243:1-243:7 {a:Nat} -> VecScalar a Float -> Float
732testdata/Prelude.lc 241:15-241:30 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> Float -> Float -> a->a 738testdata/Prelude.lc 243:10-243:20 {a:Nat} -> VecScalar a Float -> Float
733testdata/Prelude.lc 242:1-242:6 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a->c 739testdata/Prelude.lc 244:1-244:7 {a:Nat} -> VecScalar a Float -> VecS Float 2
734testdata/Prelude.lc 242:9-242:18 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a->c 740testdata/Prelude.lc 244:10-244:20 {a:Nat} -> VecScalar a Float -> VecS Float 2
735testdata/Prelude.lc 243:1-243:6 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a->c 741testdata/Prelude.lc 245:1-245:7 {a:Nat} -> VecScalar a Float -> VecS Float 3
736testdata/Prelude.lc 243:9-243:18 {a} -> {b:Nat} -> {c} -> {d : a ~ VecScalar b Float} -> {e : c ~ VecScalar b Bool} -> a->c 742testdata/Prelude.lc 245:10-245:20 {a:Nat} -> VecScalar a Float -> VecS Float 3
737testdata/Prelude.lc 245:1-245:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 743testdata/Prelude.lc 246:1-246:7 {a:Nat} -> VecScalar a Float -> VecS Float 4
738testdata/Prelude.lc 245:8-245:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 744testdata/Prelude.lc 246:10-246:20 {a:Nat} -> VecScalar a Float -> VecS Float 4
739testdata/Prelude.lc 246:1-246:5 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 745testdata/Prelude.lc 249:1-249:7 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->Float
740testdata/Prelude.lc 246:8-246:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 746testdata/Prelude.lc 249:10-249:20 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->Float
741testdata/Prelude.lc 247:1-247:7 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 747testdata/Prelude.lc 250:1-250:9 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->Float
742testdata/Prelude.lc 247:10-247:20 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 748testdata/Prelude.lc 250:12-250:24 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->Float
743testdata/Prelude.lc 249:1-249:7 {a:Nat} -> VecScalar a Float -> Float 749testdata/Prelude.lc 251:1-251:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->Float
744testdata/Prelude.lc 249:10-249:20 {a:Nat} -> VecScalar a Float -> Float 750testdata/Prelude.lc 251:7-251:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->Float
745testdata/Prelude.lc 250:1-250:7 {a:Nat} -> VecScalar a Float -> VecS Float 2 751testdata/Prelude.lc 252:1-252:6 {a} -> {b : a ~ VecS Float 3} -> a -> a->a
746testdata/Prelude.lc 250:10-250:20 {a:Nat} -> VecScalar a Float -> VecS Float 2 752testdata/Prelude.lc 252:9-252:18 {a} -> {b : a ~ VecS Float 3} -> a -> a->a
747testdata/Prelude.lc 251:1-251:7 {a:Nat} -> VecScalar a Float -> VecS Float 3 753testdata/Prelude.lc 253:1-253:10 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
748testdata/Prelude.lc 251:10-251:20 {a:Nat} -> VecScalar a Float -> VecS Float 3 754testdata/Prelude.lc 253:13-253:26 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
749testdata/Prelude.lc 252:1-252:7 {a:Nat} -> VecScalar a Float -> VecS Float 4 755testdata/Prelude.lc 254:1-254:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a
750testdata/Prelude.lc 252:10-252:20 {a:Nat} -> VecScalar a Float -> VecS Float 4 756testdata/Prelude.lc 254:15-254:30 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a
751testdata/Prelude.lc 255:1-255:7 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->Float 757testdata/Prelude.lc 255:1-255:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a
752testdata/Prelude.lc 255:10-255:20 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->Float 758testdata/Prelude.lc 255:11-255:22 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a
753testdata/Prelude.lc 256:1-256:9 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->Float 759testdata/Prelude.lc 256:1-256:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a
754testdata/Prelude.lc 256:12-256:24 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->Float 760testdata/Prelude.lc 256:11-256:22 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a
755testdata/Prelude.lc 257:1-257:4 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->Float 761testdata/Prelude.lc 258:1-258:10 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> Mat b a c
756testdata/Prelude.lc 257:7-257:14 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->Float 762testdata/Prelude.lc 258:13-258:26 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> Mat b a c
757testdata/Prelude.lc 258:1-258:6 {a} -> {b : a ~ VecS Float 3} -> a -> a->a 763testdata/Prelude.lc 259:1-259:4 {a:Nat} -> {b} -> Mat a a b -> Float
758testdata/Prelude.lc 258:9-258:18 {a} -> {b : a ~ VecS Float 3} -> a -> a->a 764testdata/Prelude.lc 259:7-259:22 {a:Nat} -> {b} -> Mat a a b -> Float
759testdata/Prelude.lc 259:1-259:10 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 765testdata/Prelude.lc 260:1-260:4 {a:Nat} -> {b} -> Mat a a b -> Mat a a b
760testdata/Prelude.lc 259:13-259:26 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 766testdata/Prelude.lc 260:7-260:18 {a:Nat} -> {b} -> Mat a a b -> Mat a a b
761testdata/Prelude.lc 260:1-260:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a 767testdata/Prelude.lc 261:1-261:6 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> VecS b c -> Mat c a b
762testdata/Prelude.lc 260:15-260:30 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a 768testdata/Prelude.lc 261:9-261:25 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> VecS b c -> Mat c a b
763testdata/Prelude.lc 261:1-261:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a 769testdata/Prelude.lc 279:3-279:4 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
764testdata/Prelude.lc 261:11-261:22 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a->a 770testdata/Prelude.lc 279:9-279:16 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
765testdata/Prelude.lc 262:1-262:8 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a 771testdata/Prelude.lc 279:9-279:18 V4->V5
766testdata/Prelude.lc 262:11-262:22 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a -> a -> a->a 772testdata/Prelude.lc 279:9-279:20 V3
767testdata/Prelude.lc 264:1-264:10 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> Mat b a c 773testdata/Prelude.lc 279:17-279:18 V5
768testdata/Prelude.lc 264:13-264:26 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> Mat b a c 774testdata/Prelude.lc 279:19-279:20 V2
769testdata/Prelude.lc 265:1-265:4 {a:Nat} -> {b} -> Mat a a b -> Float 775testdata/Prelude.lc 280:3-280:4 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
770testdata/Prelude.lc 265:7-265:22 {a:Nat} -> {b} -> Mat a a b -> Float 776testdata/Prelude.lc 280:9-280:16 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
771testdata/Prelude.lc 266:1-266:4 {a:Nat} -> {b} -> Mat a a b -> Mat a a b 777testdata/Prelude.lc 280:9-280:18 V4->V5
772testdata/Prelude.lc 266:7-266:18 {a:Nat} -> {b} -> Mat a a b -> Mat a a b 778testdata/Prelude.lc 280:9-280:20 V3
773testdata/Prelude.lc 267:1-267:6 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> VecS b c -> Mat c a b 779testdata/Prelude.lc 280:17-280:18 V5
774testdata/Prelude.lc 267:9-267:25 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> VecS b c -> Mat c a b 780testdata/Prelude.lc 280:19-280:20 V2
775testdata/Prelude.lc 285:3-285:4 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a 781testdata/Prelude.lc 281:3-281:4 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
776testdata/Prelude.lc 285:9-285:16 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a 782testdata/Prelude.lc 281:9-281:16 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
777testdata/Prelude.lc 285:9-285:18 V4->V5 783testdata/Prelude.lc 281:9-281:18 V4->V5
778testdata/Prelude.lc 285:9-285:20 V3 784testdata/Prelude.lc 281:9-281:20 V3
779testdata/Prelude.lc 285:17-285:18 V5 785testdata/Prelude.lc 281:17-281:18 V5
780testdata/Prelude.lc 285:19-285:20 V2 786testdata/Prelude.lc 281:19-281:20 V2
781testdata/Prelude.lc 286:3-286:4 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a 787testdata/Prelude.lc 282:3-282:4 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b a
782testdata/Prelude.lc 286:9-286:16 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a 788testdata/Prelude.lc 282:9-282:16 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b
783testdata/Prelude.lc 286:9-286:18 V4->V5 789testdata/Prelude.lc 282:9-282:18 VecScalar V1 V2 -> VecScalar V2 V3
784testdata/Prelude.lc 286:9-286:20 V3 790testdata/Prelude.lc 282:9-282:20 VecScalar V1 V2
785testdata/Prelude.lc 286:17-286:18 V5 791testdata/Prelude.lc 282:17-282:18 V6
786testdata/Prelude.lc 286:19-286:20 V2 792testdata/Prelude.lc 282:19-282:20 V4
787testdata/Prelude.lc 287:3-287:4 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a 793testdata/Prelude.lc 283:3-283:4 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b a
788testdata/Prelude.lc 287:9-287:16 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a 794testdata/Prelude.lc 283:9-283:16 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b
789testdata/Prelude.lc 287:9-287:18 V4->V5 795testdata/Prelude.lc 283:9-283:18 VecScalar V1 V2 -> VecScalar V2 V3
790testdata/Prelude.lc 287:9-287:20 V3 796testdata/Prelude.lc 283:9-283:20 VecScalar V1 V2
791testdata/Prelude.lc 287:17-287:18 V5 797testdata/Prelude.lc 283:17-283:18 V6
792testdata/Prelude.lc 287:19-287:20 V2 798testdata/Prelude.lc 283:19-283:20 V4
793testdata/Prelude.lc 288:3-288:4 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b a 799testdata/Prelude.lc 285:1-285:4 {a} -> {b : Signed (MatVecScalarElem a)} -> a->a
794testdata/Prelude.lc 288:9-288:16 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b 800testdata/Prelude.lc 285:9-285:16 {a} -> {b : Signed (MatVecScalarElem a)} -> a->a
795testdata/Prelude.lc 288:9-288:18 VecScalar V1 V2 -> VecScalar V2 V3 801testdata/Prelude.lc 285:9-285:18 V2
796testdata/Prelude.lc 288:9-288:20 VecScalar V1 V2 802testdata/Prelude.lc 285:17-285:18 V3
797testdata/Prelude.lc 288:17-288:18 V6 803testdata/Prelude.lc 289:3-289:5 {a} -> a -> a->Bool
798testdata/Prelude.lc 288:19-288:20 V4 804testdata/Prelude.lc 289:10-289:22 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> b -> b->Bool
799testdata/Prelude.lc 289:3-289:4 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b a 805testdata/Prelude.lc 289:10-289:24 V3->Bool
800testdata/Prelude.lc 289:9-289:16 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> b->b 806testdata/Prelude.lc 289:10-289:26 Bool
801testdata/Prelude.lc 289:9-289:18 VecScalar V1 V2 -> VecScalar V2 V3 807testdata/Prelude.lc 289:23-289:24 V4
802testdata/Prelude.lc 289:9-289:20 VecScalar V1 V2 808testdata/Prelude.lc 289:25-289:26 V1
803testdata/Prelude.lc 289:17-289:18 V6 809testdata/Prelude.lc 290:3-290:4 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b Bool
804testdata/Prelude.lc 289:19-289:20 V4 810testdata/Prelude.lc 290:9-290:21 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d
805testdata/Prelude.lc 291:1-291:4 {a} -> {b : Signed (MatVecScalarElem a)} -> a->a 811testdata/Prelude.lc 290:9-290:23 VecScalar V1 V2 -> VecScalar V2 Bool
806testdata/Prelude.lc 291:9-291:16 {a} -> {b : Signed (MatVecScalarElem a)} -> a->a 812testdata/Prelude.lc 290:9-290:25 VecScalar V1 Bool
807testdata/Prelude.lc 291:9-291:18 V2 813testdata/Prelude.lc 290:22-290:23 V6
808testdata/Prelude.lc 291:17-291:18 V3 814testdata/Prelude.lc 290:24-290:25 V4
809testdata/Prelude.lc 295:3-295:5 {a} -> a -> a->Bool 815testdata/Prelude.lc 291:3-291:5 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b Bool
810testdata/Prelude.lc 295:10-295:22 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> b -> b->Bool 816testdata/Prelude.lc 291:10-291:27 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d
811testdata/Prelude.lc 295:10-295:24 V3->Bool 817testdata/Prelude.lc 291:10-291:29 VecScalar V1 V2 -> VecScalar V2 Bool
812testdata/Prelude.lc 295:10-295:26 Bool 818testdata/Prelude.lc 291:10-291:31 VecScalar V1 Bool
813testdata/Prelude.lc 295:23-295:24 V4 819testdata/Prelude.lc 291:28-291:29 V6
814testdata/Prelude.lc 295:25-295:26 V1 820testdata/Prelude.lc 291:30-291:31 V4
815testdata/Prelude.lc 296:3-296:4 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b Bool 821testdata/Prelude.lc 292:3-292:5 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b Bool
816testdata/Prelude.lc 296:9-296:21 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d 822testdata/Prelude.lc 292:10-292:30 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d
817testdata/Prelude.lc 296:9-296:23 VecScalar V1 V2 -> VecScalar V2 Bool 823testdata/Prelude.lc 292:10-292:32 VecScalar V1 V2 -> VecScalar V2 Bool
818testdata/Prelude.lc 296:9-296:25 VecScalar V1 Bool 824testdata/Prelude.lc 292:10-292:34 VecScalar V1 Bool
819testdata/Prelude.lc 296:22-296:23 V6 825testdata/Prelude.lc 292:31-292:32 V6
820testdata/Prelude.lc 296:24-296:25 V4 826testdata/Prelude.lc 292:33-292:34 V4
821testdata/Prelude.lc 297:3-297:5 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b Bool 827testdata/Prelude.lc 293:3-293:4 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b Bool
822testdata/Prelude.lc 297:10-297:27 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d 828testdata/Prelude.lc 293:9-293:24 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d
823testdata/Prelude.lc 297:10-297:29 VecScalar V1 V2 -> VecScalar V2 Bool 829testdata/Prelude.lc 293:9-293:26 VecScalar V1 V2 -> VecScalar V2 Bool
824testdata/Prelude.lc 297:10-297:31 VecScalar V1 Bool 830testdata/Prelude.lc 293:9-293:28 VecScalar V1 Bool
825testdata/Prelude.lc 297:28-297:29 V6 831testdata/Prelude.lc 293:25-293:26 V6
826testdata/Prelude.lc 297:30-297:31 V4 832testdata/Prelude.lc 293:27-293:28 V4
827testdata/Prelude.lc 298:3-298:5 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b Bool 833testdata/Prelude.lc 296:3-296:5 Bool -> Bool->Bool
828testdata/Prelude.lc 298:10-298:30 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d 834testdata/Prelude.lc 296:10-296:17 Bool -> Bool->Bool
829testdata/Prelude.lc 298:10-298:32 VecScalar V1 V2 -> VecScalar V2 Bool 835testdata/Prelude.lc 296:10-296:19 Bool->Bool
830testdata/Prelude.lc 298:10-298:34 VecScalar V1 Bool 836testdata/Prelude.lc 296:10-296:21 Bool
831testdata/Prelude.lc 298:31-298:32 V6 837testdata/Prelude.lc 296:18-296:19 V3
832testdata/Prelude.lc 298:33-298:34 V4 838testdata/Prelude.lc 296:20-296:21 V1
833testdata/Prelude.lc 299:3-299:4 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b Bool 839testdata/Prelude.lc 297:3-297:5 Bool -> Bool->Bool
834testdata/Prelude.lc 299:9-299:24 {a} -> {b} -> {c:Nat} -> {d} -> {e : Num a} -> {f : b ~ VecScalar c a} -> {g : d ~ VecScalar c Bool} -> b -> b->d 840testdata/Prelude.lc 297:10-297:16 Bool -> Bool->Bool
835testdata/Prelude.lc 299:9-299:26 VecScalar V1 V2 -> VecScalar V2 Bool 841testdata/Prelude.lc 297:10-297:18 Bool->Bool
836testdata/Prelude.lc 299:9-299:28 VecScalar V1 Bool 842testdata/Prelude.lc 297:10-297:20 Bool
837testdata/Prelude.lc 299:25-299:26 V6 843testdata/Prelude.lc 297:17-297:18 V3
838testdata/Prelude.lc 299:27-299:28 V4 844testdata/Prelude.lc 297:19-297:20 V1
839testdata/Prelude.lc 302:3-302:5 Bool -> Bool->Bool 845testdata/Prelude.lc 298:1-298:4 Bool -> Bool->Bool
840testdata/Prelude.lc 302:10-302:17 Bool -> Bool->Bool 846testdata/Prelude.lc 298:7-298:14 Bool -> Bool->Bool
841testdata/Prelude.lc 302:10-302:19 Bool->Bool 847testdata/Prelude.lc 299:1-299:4 {a:Nat} -> VecScalar a Bool -> VecScalar a Bool
842testdata/Prelude.lc 302:10-302:21 Bool 848testdata/Prelude.lc 299:9-299:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Bool} -> a->a
843testdata/Prelude.lc 302:18-302:19 V3 849testdata/Prelude.lc 299:9-299:18 VecScalar V0 Bool
844testdata/Prelude.lc 302:20-302:21 V1 850testdata/Prelude.lc 299:17-299:18 V2
845testdata/Prelude.lc 303:3-303:5 Bool -> Bool->Bool 851testdata/Prelude.lc 300:1-300:4 {a:Nat} -> VecScalar a Bool -> Bool
846testdata/Prelude.lc 303:10-303:16 Bool -> Bool->Bool 852testdata/Prelude.lc 300:9-300:16 {a:Nat} -> VecScalar a Bool -> Bool
847testdata/Prelude.lc 303:10-303:18 Bool->Bool 853testdata/Prelude.lc 300:9-300:18 Bool
848testdata/Prelude.lc 303:10-303:20 Bool 854testdata/Prelude.lc 300:17-300:18 V2
849testdata/Prelude.lc 303:17-303:18 V3 855testdata/Prelude.lc 301:1-301:4 {a:Nat} -> VecScalar a Bool -> Bool
850testdata/Prelude.lc 303:19-303:20 V1 856testdata/Prelude.lc 301:9-301:16 {a:Nat} -> VecScalar a Bool -> Bool
851testdata/Prelude.lc 304:1-304:4 Bool -> Bool->Bool 857testdata/Prelude.lc 301:9-301:18 Bool
852testdata/Prelude.lc 304:7-304:14 Bool -> Bool->Bool 858testdata/Prelude.lc 301:17-301:18 V2
853testdata/Prelude.lc 305:1-305:4 {a:Nat} -> VecScalar a Bool -> VecScalar a Bool 859testdata/Prelude.lc 304:3-304:6 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c
854testdata/Prelude.lc 305:9-305:16 {a} -> {b:Nat} -> {c : a ~ VecScalar b Bool} -> a->a 860testdata/Prelude.lc 304:11-304:24 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c
855testdata/Prelude.lc 305:9-305:18 VecScalar V0 Bool 861testdata/Prelude.lc 304:11-304:26 Mat V2 V0 V1 -> Mat V4 V1 V2
856testdata/Prelude.lc 305:17-305:18 V2 862testdata/Prelude.lc 304:11-304:28 Mat V3 V0 V1
857testdata/Prelude.lc 306:1-306:4 {a:Nat} -> VecScalar a Bool -> Bool 863testdata/Prelude.lc 304:25-304:26 V7
858testdata/Prelude.lc 306:9-306:16 {a:Nat} -> VecScalar a Bool -> Bool 864testdata/Prelude.lc 304:27-304:28 V5
859testdata/Prelude.lc 306:9-306:18 Bool 865testdata/Prelude.lc 305:3-305:5 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> VecS c b -> VecS c a
860testdata/Prelude.lc 306:17-306:18 V2 866testdata/Prelude.lc 305:10-305:23 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> VecS c b -> VecS c a
861testdata/Prelude.lc 307:1-307:4 {a:Nat} -> VecScalar a Bool -> Bool 867testdata/Prelude.lc 305:10-305:25 VecS V0 V1 -> VecS V1 V3
862testdata/Prelude.lc 307:9-307:16 {a:Nat} -> VecScalar a Bool -> Bool 868testdata/Prelude.lc 305:10-305:27 VecS V0 V2
863testdata/Prelude.lc 307:9-307:18 Bool 869testdata/Prelude.lc 305:24-305:25 V6
864testdata/Prelude.lc 307:17-307:18 V2 870testdata/Prelude.lc 305:26-305:27 V4
865testdata/Prelude.lc 310:3-310:6 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c 871testdata/Prelude.lc 306:3-306:5 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> Mat a c b -> VecS b c
866testdata/Prelude.lc 310:11-310:24 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c 872testdata/Prelude.lc 306:10-306:23 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> Mat a c b -> VecS b c
867testdata/Prelude.lc 310:11-310:26 Mat V2 V0 V1 -> Mat V4 V1 V2 873testdata/Prelude.lc 306:10-306:25 Mat V2 V0 V1 -> VecS V2 V1
868testdata/Prelude.lc 310:11-310:28 Mat V3 V0 V1 874testdata/Prelude.lc 306:10-306:27 VecS V1 V0
869testdata/Prelude.lc 310:25-310:26 V7 875testdata/Prelude.lc 306:24-306:25 V6
870testdata/Prelude.lc 310:27-310:28 V5 876testdata/Prelude.lc 306:26-306:27 V4
871testdata/Prelude.lc 311:3-311:5 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> VecS c b -> VecS c a 877testdata/Prelude.lc 313:3-313:5 {a} -> {b : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a
872testdata/Prelude.lc 311:10-311:23 {a:Nat} -> {b:Nat} -> {c} -> Mat a b c -> VecS c b -> VecS c a 878testdata/Prelude.lc 313:10-313:18 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> {d : Num a} -> b -> a->b
873testdata/Prelude.lc 311:10-311:25 VecS V0 V1 -> VecS V1 V3 879testdata/Prelude.lc 313:10-313:20 MatVecScalarElem V4 -> V5
874testdata/Prelude.lc 311:10-311:27 VecS V0 V2 880testdata/Prelude.lc 313:10-313:22 V3
875testdata/Prelude.lc 311:24-311:25 V6 881testdata/Prelude.lc 313:19-313:20 V5
876testdata/Prelude.lc 311:26-311:27 V4 882testdata/Prelude.lc 313:21-313:22 V2
877testdata/Prelude.lc 312:3-312:5 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> Mat a c b -> VecS b c 883testdata/Prelude.lc 314:3-314:5 {a} -> {b : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a
878testdata/Prelude.lc 312:10-312:23 {a:Nat} -> {b} -> {c:Nat} -> VecS b a -> Mat a c b -> VecS b c 884testdata/Prelude.lc 314:10-314:18 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> {d : Num a} -> b -> a->b
879testdata/Prelude.lc 312:10-312:25 Mat V2 V0 V1 -> VecS V2 V1 885testdata/Prelude.lc 314:10-314:20 MatVecScalarElem V4 -> V5
880testdata/Prelude.lc 312:10-312:27 VecS V1 V0 886testdata/Prelude.lc 314:10-314:22 V3
881testdata/Prelude.lc 312:24-312:25 V6 887testdata/Prelude.lc 314:19-314:20 V5
882testdata/Prelude.lc 312:26-312:27 V4 888testdata/Prelude.lc 314:21-314:22 V2
883testdata/Prelude.lc 319:3-319:5 {a} -> {b : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a 889testdata/Prelude.lc 315:3-315:5 {a} -> {b : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a
884testdata/Prelude.lc 319:10-319:18 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> {d : Num a} -> b -> a->b 890testdata/Prelude.lc 315:10-315:18 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> {d : Num a} -> b -> a->b
885testdata/Prelude.lc 319:10-319:20 MatVecScalarElem V4 -> V5 891testdata/Prelude.lc 315:10-315:20 MatVecScalarElem V4 -> V5
886testdata/Prelude.lc 319:10-319:22 V3 892testdata/Prelude.lc 315:10-315:22 V3
887testdata/Prelude.lc 319:19-319:20 V5 893testdata/Prelude.lc 315:19-315:20 V5
888testdata/Prelude.lc 319:21-319:22 V2 894testdata/Prelude.lc 315:21-315:22 V2
889testdata/Prelude.lc 320:3-320:5 {a} -> {b : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a 895testdata/Prelude.lc 316:3-316:5 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> a -> VecScalar b a
890testdata/Prelude.lc 320:10-320:18 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> {d : Num a} -> b -> a->b 896testdata/Prelude.lc 316:10-316:18 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a->b
891testdata/Prelude.lc 320:10-320:20 MatVecScalarElem V4 -> V5 897testdata/Prelude.lc 316:10-316:20 V2 -> VecScalar V2 V3
892testdata/Prelude.lc 320:10-320:22 V3 898testdata/Prelude.lc 316:10-316:22 VecScalar V1 V3
893testdata/Prelude.lc 320:19-320:20 V5 899testdata/Prelude.lc 316:19-316:20 V6
894testdata/Prelude.lc 320:21-320:22 V2 900testdata/Prelude.lc 316:21-316:22 V4
895testdata/Prelude.lc 321:3-321:5 {a} -> {b : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a 901testdata/Prelude.lc 317:3-317:5 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> a -> VecScalar b a
896testdata/Prelude.lc 321:10-321:18 {a} -> {b} -> {c : a ~ MatVecScalarElem b} -> {d : Num a} -> b -> a->b 902testdata/Prelude.lc 317:10-317:18 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a->b
897testdata/Prelude.lc 321:10-321:20 MatVecScalarElem V4 -> V5 903testdata/Prelude.lc 317:10-317:20 V2 -> VecScalar V2 V3
898testdata/Prelude.lc 321:10-321:22 V3 904testdata/Prelude.lc 317:10-317:22 VecScalar V1 V3
899testdata/Prelude.lc 321:19-321:20 V5 905testdata/Prelude.lc 317:19-317:20 V6
900testdata/Prelude.lc 321:21-321:22 V2 906testdata/Prelude.lc 317:21-317:22 V4
901testdata/Prelude.lc 322:3-322:5 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> a -> VecScalar b a 907testdata/Prelude.lc 340:1-340:11 Float -> Mat 4 4 Float
902testdata/Prelude.lc 322:10-322:18 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a->b 908testdata/Prelude.lc 340:16-340:20 VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float
903testdata/Prelude.lc 322:10-322:20 V2 -> VecScalar V2 V3 909testdata/Prelude.lc 340:16-340:33 VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float
904testdata/Prelude.lc 322:10-322:22 VecScalar V1 V3 910testdata/Prelude.lc 340:16-340:49 VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float
905testdata/Prelude.lc 322:19-322:20 V6 911testdata/Prelude.lc 340:16-340:62 VecS Float 4 -> Mat 4 4 Float
906testdata/Prelude.lc 322:21-322:22 V4 912testdata/Prelude.lc 340:16-340:75 Mat 4 4 Float
907testdata/Prelude.lc 323:3-323:5 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> a -> VecScalar b a 913testdata/Prelude.lc 340:21-340:33 VecS Float 4
908testdata/Prelude.lc 323:10-323:18 {a} -> {b} -> {c:Nat} -> {d : Num a} -> {e : b ~ VecScalar c a} -> b -> a->b 914testdata/Prelude.lc 340:22-340:24 {a} -> a -> a -> a -> a -> VecS a 4
909testdata/Prelude.lc 323:10-323:20 V2 -> VecScalar V2 V3 915testdata/Prelude.lc 340:22-340:26 VecScalar V2 Float -> VecScalar V3 Float -> VecScalar V4 Float -> VecS (VecScalar V5 Float) 4
910testdata/Prelude.lc 323:10-323:22 VecScalar V1 V3 916testdata/Prelude.lc 340:22-340:28 VecScalar V2 Float -> VecScalar V3 Float -> VecS (VecScalar V4 Float) 4
911testdata/Prelude.lc 323:19-323:20 V6 917testdata/Prelude.lc 340:22-340:30 VecScalar V3 Float -> VecS (VecScalar V4 Float) 4
912testdata/Prelude.lc 323:21-323:22 V4 918testdata/Prelude.lc 340:25-340:26 VecScalar V3 Float
913testdata/Prelude.lc 346:1-346:11 Float -> Mat 4 4 Float 919testdata/Prelude.lc 340:27-340:28 VecScalar V2 Float
914testdata/Prelude.lc 346:16-346:20 VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float 920testdata/Prelude.lc 340:29-340:30 V1
915testdata/Prelude.lc 346:16-346:33 VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float 921testdata/Prelude.lc 340:31-340:32 V1
916testdata/Prelude.lc 346:16-346:49 VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float 922testdata/Prelude.lc 340:34-340:49 VecS Float 4
917testdata/Prelude.lc 346:16-346:62 VecS Float 4 -> Mat 4 4 Float 923testdata/Prelude.lc 340:35-340:37 {a} -> a -> a -> a -> a -> VecS a 4
918testdata/Prelude.lc 346:16-346:75 Mat 4 4 Float 924testdata/Prelude.lc 340:35-340:42 Float -> Float -> Float -> VecS Float 4
919testdata/Prelude.lc 346:21-346:33 VecS Float 4 925testdata/Prelude.lc 340:35-340:44 Float -> Float -> VecS Float 4
920testdata/Prelude.lc 346:22-346:24 {a} -> a -> a -> a -> a -> VecS a 4 926testdata/Prelude.lc 340:35-340:46 Float -> VecS Float 4
921testdata/Prelude.lc 346:22-346:26 VecScalar V2 Float -> VecScalar V3 Float -> VecScalar V4 Float -> VecS (VecScalar V5 Float) 4 927testdata/Prelude.lc 340:38-340:42 Float
922testdata/Prelude.lc 346:22-346:28 VecScalar V2 Float -> VecScalar V3 Float -> VecS (VecScalar V4 Float) 4 928testdata/Prelude.lc 340:39-340:40 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
923testdata/Prelude.lc 346:22-346:30 VecScalar V3 Float -> VecS (VecScalar V4 Float) 4 929testdata/Prelude.lc 340:40-340:41 Float
924testdata/Prelude.lc 346:25-346:26 VecScalar V3 Float 930testdata/Prelude.lc 340:43-340:44 Float
925testdata/Prelude.lc 346:27-346:28 VecScalar V2 Float 931testdata/Prelude.lc 340:45-340:46 V1
926testdata/Prelude.lc 346:29-346:30 V1 932testdata/Prelude.lc 340:47-340:48 V1
927testdata/Prelude.lc 346:31-346:32 V1 933testdata/Prelude.lc 340:50-340:62 VecS Float 4
928testdata/Prelude.lc 346:34-346:49 VecS Float 4 934testdata/Prelude.lc 340:51-340:53 {a} -> a -> a -> a -> a -> VecS a 4
929testdata/Prelude.lc 346:35-346:37 {a} -> a -> a -> a -> a -> VecS a 4 935testdata/Prelude.lc 340:51-340:55 V1 -> V2 -> V3 -> VecS V4 4
930testdata/Prelude.lc 346:35-346:42 Float -> Float -> Float -> VecS Float 4 936testdata/Prelude.lc 340:51-340:57 V2 -> V3 -> VecS V4 4
931testdata/Prelude.lc 346:35-346:44 Float -> Float -> VecS Float 4 937testdata/Prelude.lc 340:51-340:59 V2 -> VecS V3 4
932testdata/Prelude.lc 346:35-346:46 Float -> VecS Float 4 938testdata/Prelude.lc 340:54-340:55 V1
933testdata/Prelude.lc 346:38-346:42 Float 939testdata/Prelude.lc 340:56-340:57 V1
934testdata/Prelude.lc 346:39-346:40 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a 940testdata/Prelude.lc 340:58-340:59 V1
935testdata/Prelude.lc 346:40-346:41 Float 941testdata/Prelude.lc 340:60-340:61 V1
936testdata/Prelude.lc 346:43-346:44 Float 942testdata/Prelude.lc 340:63-340:75 VecS Float 4
937testdata/Prelude.lc 346:45-346:46 V1 943testdata/Prelude.lc 340:64-340:66 {a} -> a -> a -> a -> a -> VecS a 4
938testdata/Prelude.lc 346:47-346:48 V1 944testdata/Prelude.lc 340:64-340:68 V1 -> V2 -> V3 -> VecS V4 4
939testdata/Prelude.lc 346:50-346:62 VecS Float 4 945testdata/Prelude.lc 340:64-340:70 V2 -> V3 -> VecS V4 4
940testdata/Prelude.lc 346:51-346:53 {a} -> a -> a -> a -> a -> VecS a 4 946testdata/Prelude.lc 340:64-340:72 V2 -> VecS V3 4
941testdata/Prelude.lc 346:51-346:55 V1 -> V2 -> V3 -> VecS V4 4 947testdata/Prelude.lc 340:67-340:68 V1
942testdata/Prelude.lc 346:51-346:57 V2 -> V3 -> VecS V4 4 948testdata/Prelude.lc 340:69-340:70 V1
943testdata/Prelude.lc 346:51-346:59 V2 -> VecS V3 4 949testdata/Prelude.lc 340:71-340:72 V1
944testdata/Prelude.lc 346:54-346:55 V1 950testdata/Prelude.lc 340:73-340:74 V1
945testdata/Prelude.lc 346:56-346:57 V1 951testdata/Prelude.lc 342:9-342:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
946testdata/Prelude.lc 346:58-346:59 V1 952testdata/Prelude.lc 342:9-342:14 VecScalar V0 Float
947testdata/Prelude.lc 346:60-346:61 V1 953testdata/Prelude.lc 342:13-342:14 V2
948testdata/Prelude.lc 346:63-346:75 VecS Float 4 954testdata/Prelude.lc 343:9-343:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
949testdata/Prelude.lc 346:64-346:66 {a} -> a -> a -> a -> a -> VecS a 4 955testdata/Prelude.lc 343:9-343:14 VecScalar V1 Float
950testdata/Prelude.lc 346:64-346:68 V1 -> V2 -> V3 -> VecS V4 4 956testdata/Prelude.lc 343:13-343:14 VecScalar V2 Float
951testdata/Prelude.lc 346:64-346:70 V2 -> V3 -> VecS V4 4 957testdata/Prelude.lc 345:1-345:11 Float -> Mat 4 4 Float
952testdata/Prelude.lc 346:64-346:72 V2 -> VecS V3 4 958testdata/Prelude.lc 345:16-345:20 VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float
953testdata/Prelude.lc 346:67-346:68 V1 959testdata/Prelude.lc 345:16-345:36 VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float
954testdata/Prelude.lc 346:69-346:70 V1 960testdata/Prelude.lc 345:16-345:49 VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float
955testdata/Prelude.lc 346:71-346:72 V1 961testdata/Prelude.lc 345:16-345:62 VecS Float 4 -> Mat 4 4 Float
956testdata/Prelude.lc 346:73-346:74 V1 962testdata/Prelude.lc 345:16-345:75 Mat 4 4 Float
963testdata/Prelude.lc 345:21-345:36 VecS Float 4
964testdata/Prelude.lc 345:22-345:24 {a} -> a -> a -> a -> a -> VecS a 4
965testdata/Prelude.lc 345:22-345:26 VecScalar V2 Float -> VecScalar V3 Float -> VecScalar V4 Float -> VecS (VecScalar V5 Float) 4
966testdata/Prelude.lc 345:22-345:28 VecScalar V3 Float -> VecScalar V4 Float -> VecS (VecScalar V5 Float) 4
967testdata/Prelude.lc 345:22-345:33 VecScalar V5 Float -> VecS (VecScalar V6 Float) 4
968testdata/Prelude.lc 345:25-345:26 VecScalar V3 Float
969testdata/Prelude.lc 345:27-345:28 V1
970testdata/Prelude.lc 345:29-345:33 VecScalar V5 Float
971testdata/Prelude.lc 345:30-345:31 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
972testdata/Prelude.lc 345:31-345:32 VecScalar V5 Float
973testdata/Prelude.lc 345:34-345:35 V1
974testdata/Prelude.lc 345:37-345:49 VecS Float 4
975testdata/Prelude.lc 345:38-345:40 {a} -> a -> a -> a -> a -> VecS a 4
976testdata/Prelude.lc 345:38-345:42 V1 -> V2 -> V3 -> VecS V4 4
977testdata/Prelude.lc 345:38-345:44 V2 -> V3 -> VecS V4 4
978testdata/Prelude.lc 345:38-345:46 V2 -> VecS V3 4
979testdata/Prelude.lc 345:41-345:42 V1
980testdata/Prelude.lc 345:43-345:44 V1
981testdata/Prelude.lc 345:45-345:46 V1
982testdata/Prelude.lc 345:47-345:48 V1
983testdata/Prelude.lc 345:50-345:62 VecS Float 4
984testdata/Prelude.lc 345:51-345:53 {a} -> a -> a -> a -> a -> VecS a 4
985testdata/Prelude.lc 345:51-345:55 Float -> Float -> Float -> VecS Float 4
986testdata/Prelude.lc 345:51-345:57 Float -> Float -> VecS Float 4
987testdata/Prelude.lc 345:51-345:59 Float -> VecS Float 4
988testdata/Prelude.lc 345:54-345:55 Float
989testdata/Prelude.lc 345:56-345:57 V1
990testdata/Prelude.lc 345:58-345:59 Float
991testdata/Prelude.lc 345:60-345:61 V1
992testdata/Prelude.lc 345:63-345:75 VecS Float 4
993testdata/Prelude.lc 345:64-345:66 {a} -> a -> a -> a -> a -> VecS a 4
994testdata/Prelude.lc 345:64-345:68 V1 -> V2 -> V3 -> VecS V4 4
995testdata/Prelude.lc 345:64-345:70 V2 -> V3 -> VecS V4 4
996testdata/Prelude.lc 345:64-345:72 V2 -> VecS V3 4
997testdata/Prelude.lc 345:67-345:68 V1
998testdata/Prelude.lc 345:69-345:70 V1
999testdata/Prelude.lc 345:71-345:72 V1
1000testdata/Prelude.lc 345:73-345:74 V1
1001testdata/Prelude.lc 347:9-347:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
1002testdata/Prelude.lc 347:9-347:14 VecScalar V0 Float
1003testdata/Prelude.lc 347:13-347:14 V2
957testdata/Prelude.lc 348:9-348:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1004testdata/Prelude.lc 348:9-348:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
958testdata/Prelude.lc 348:9-348:14 VecScalar V0 Float 1005testdata/Prelude.lc 348:9-348:14 VecScalar V1 Float
959testdata/Prelude.lc 348:13-348:14 V2 1006testdata/Prelude.lc 348:13-348:14 VecScalar V2 Float
960testdata/Prelude.lc 349:9-349:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1007testdata/Prelude.lc 350:1-350:11 Float -> Mat 4 4 Float
961testdata/Prelude.lc 349:9-349:14 VecScalar V1 Float 1008testdata/Prelude.lc 350:16-350:20 VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float
962testdata/Prelude.lc 349:13-349:14 VecScalar V2 Float 1009testdata/Prelude.lc 350:16-350:33 VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float
963testdata/Prelude.lc 351:1-351:11 Float -> Mat 4 4 Float 1010testdata/Prelude.lc 350:16-350:46 VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float
964testdata/Prelude.lc 351:16-351:20 VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float 1011testdata/Prelude.lc 350:16-350:62 VecS Float 4 -> Mat 4 4 Float
965testdata/Prelude.lc 351:16-351:36 VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float 1012testdata/Prelude.lc 350:16-350:75 Mat 4 4 Float
966testdata/Prelude.lc 351:16-351:49 VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float 1013testdata/Prelude.lc 350:21-350:33 VecS Float 4
967testdata/Prelude.lc 351:16-351:62 VecS Float 4 -> Mat 4 4 Float 1014testdata/Prelude.lc 350:22-350:24 {a} -> a -> a -> a -> a -> VecS a 4
968testdata/Prelude.lc 351:16-351:75 Mat 4 4 Float 1015testdata/Prelude.lc 350:22-350:26 V1 -> V2 -> V3 -> VecS V4 4
969testdata/Prelude.lc 351:21-351:36 VecS Float 4 1016testdata/Prelude.lc 350:22-350:28 V2 -> V3 -> VecS V4 4
970testdata/Prelude.lc 351:22-351:24 {a} -> a -> a -> a -> a -> VecS a 4 1017testdata/Prelude.lc 350:22-350:30 V2 -> VecS V3 4
971testdata/Prelude.lc 351:22-351:26 VecScalar V2 Float -> VecScalar V3 Float -> VecScalar V4 Float -> VecS (VecScalar V5 Float) 4 1018testdata/Prelude.lc 350:25-350:26 V1
972testdata/Prelude.lc 351:22-351:28 VecScalar V3 Float -> VecScalar V4 Float -> VecS (VecScalar V5 Float) 4 1019testdata/Prelude.lc 350:27-350:28 V1
973testdata/Prelude.lc 351:22-351:33 VecScalar V5 Float -> VecS (VecScalar V6 Float) 4 1020testdata/Prelude.lc 350:29-350:30 V1
974testdata/Prelude.lc 351:25-351:26 VecScalar V3 Float 1021testdata/Prelude.lc 350:31-350:32 V1
975testdata/Prelude.lc 351:27-351:28 V1 1022testdata/Prelude.lc 350:34-350:46 VecS Float 4
976testdata/Prelude.lc 351:29-351:33 VecScalar V5 Float 1023testdata/Prelude.lc 350:35-350:37 {a} -> a -> a -> a -> a -> VecS a 4
977testdata/Prelude.lc 351:30-351:31 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a 1024testdata/Prelude.lc 350:35-350:39 V1 -> V2 -> V3 -> VecS V4 4
978testdata/Prelude.lc 351:31-351:32 VecScalar V5 Float 1025testdata/Prelude.lc 350:35-350:41 VecScalar V3 Float -> VecScalar V4 Float -> VecS (VecScalar V5 Float) 4
979testdata/Prelude.lc 351:34-351:35 V1 1026testdata/Prelude.lc 350:35-350:43 VecScalar V3 Float -> VecS (VecScalar V4 Float) 4
980testdata/Prelude.lc 351:37-351:49 VecS Float 4 1027testdata/Prelude.lc 350:38-350:39 V1
981testdata/Prelude.lc 351:38-351:40 {a} -> a -> a -> a -> a -> VecS a 4 1028testdata/Prelude.lc 350:40-350:41 VecScalar V4 Float
982testdata/Prelude.lc 351:38-351:42 V1 -> V2 -> V3 -> VecS V4 4 1029testdata/Prelude.lc 350:42-350:43 VecScalar V3 Float
983testdata/Prelude.lc 351:38-351:44 V2 -> V3 -> VecS V4 4 1030testdata/Prelude.lc 350:44-350:45 V1
984testdata/Prelude.lc 351:38-351:46 V2 -> VecS V3 4 1031testdata/Prelude.lc 350:47-350:62 VecS Float 4
985testdata/Prelude.lc 351:41-351:42 V1 1032testdata/Prelude.lc 350:48-350:50 {a} -> a -> a -> a -> a -> VecS a 4
986testdata/Prelude.lc 351:43-351:44 V1 1033testdata/Prelude.lc 350:48-350:52 V1 -> V2 -> V3 -> VecS V4 4
987testdata/Prelude.lc 351:45-351:46 V1 1034testdata/Prelude.lc 350:48-350:57 Float -> Float -> VecS Float 4
988testdata/Prelude.lc 351:47-351:48 V1 1035testdata/Prelude.lc 350:48-350:59 Float -> VecS Float 4
989testdata/Prelude.lc 351:50-351:62 VecS Float 4 1036testdata/Prelude.lc 350:51-350:52 V1
990testdata/Prelude.lc 351:51-351:53 {a} -> a -> a -> a -> a -> VecS a 4 1037testdata/Prelude.lc 350:53-350:57 Float
991testdata/Prelude.lc 351:51-351:55 Float -> Float -> Float -> VecS Float 4 1038testdata/Prelude.lc 350:54-350:55 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
992testdata/Prelude.lc 351:51-351:57 Float -> Float -> VecS Float 4 1039testdata/Prelude.lc 350:55-350:56 Float
993testdata/Prelude.lc 351:51-351:59 Float -> VecS Float 4 1040testdata/Prelude.lc 350:58-350:59 Float
994testdata/Prelude.lc 351:54-351:55 Float 1041testdata/Prelude.lc 350:60-350:61 V1
995testdata/Prelude.lc 351:56-351:57 V1 1042testdata/Prelude.lc 350:63-350:75 VecS Float 4
996testdata/Prelude.lc 351:58-351:59 Float 1043testdata/Prelude.lc 350:64-350:66 {a} -> a -> a -> a -> a -> VecS a 4
997testdata/Prelude.lc 351:60-351:61 V1 1044testdata/Prelude.lc 350:64-350:68 V1 -> V2 -> V3 -> VecS V4 4
998testdata/Prelude.lc 351:63-351:75 VecS Float 4 1045testdata/Prelude.lc 350:64-350:70 V2 -> V3 -> VecS V4 4
999testdata/Prelude.lc 351:64-351:66 {a} -> a -> a -> a -> a -> VecS a 4 1046testdata/Prelude.lc 350:64-350:72 V2 -> VecS V3 4
1000testdata/Prelude.lc 351:64-351:68 V1 -> V2 -> V3 -> VecS V4 4 1047testdata/Prelude.lc 350:67-350:68 V1
1001testdata/Prelude.lc 351:64-351:70 V2 -> V3 -> VecS V4 4 1048testdata/Prelude.lc 350:69-350:70 V1
1002testdata/Prelude.lc 351:64-351:72 V2 -> VecS V3 4 1049testdata/Prelude.lc 350:71-350:72 V1
1003testdata/Prelude.lc 351:67-351:68 V1 1050testdata/Prelude.lc 350:73-350:74 V1
1004testdata/Prelude.lc 351:69-351:70 V1 1051testdata/Prelude.lc 352:9-352:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
1005testdata/Prelude.lc 351:71-351:72 V1 1052testdata/Prelude.lc 352:9-352:14 VecScalar V0 Float
1006testdata/Prelude.lc 351:73-351:74 V1 1053testdata/Prelude.lc 352:13-352:14 V2
1007testdata/Prelude.lc 353:9-353:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1054testdata/Prelude.lc 353:9-353:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a
1008testdata/Prelude.lc 353:9-353:14 VecScalar V0 Float 1055testdata/Prelude.lc 353:9-353:14 VecScalar V1 Float
1009testdata/Prelude.lc 353:13-353:14 V2 1056testdata/Prelude.lc 353:13-353:14 VecScalar V2 Float
1010testdata/Prelude.lc 354:9-354:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1057testdata/Prelude.lc 355:1-355:14 Float -> Float -> Float -> Mat 4 4 Float
1011testdata/Prelude.lc 354:9-354:14 VecScalar V1 Float 1058testdata/Prelude.lc 355:23-355:33 Float -> Mat 4 4 Float
1012testdata/Prelude.lc 354:13-354:14 VecScalar V2 Float 1059testdata/Prelude.lc 355:23-355:35 Mat 4 4 Float
1013testdata/Prelude.lc 356:1-356:11 Float -> Mat 4 4 Float 1060testdata/Prelude.lc 355:23-355:39 Mat 4 V0 Float -> Mat 4 V1 Float
1014testdata/Prelude.lc 356:16-356:20 VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float 1061testdata/Prelude.lc 355:23-355:52 Mat 4 4 Float
1015testdata/Prelude.lc 356:16-356:33 VecS Float 4 -> VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float 1062testdata/Prelude.lc 355:23-355:56 Mat 4 V0 Float -> Mat 4 V1 Float
1016testdata/Prelude.lc 356:16-356:46 VecS Float 4 -> VecS Float 4 -> Mat 4 4 Float 1063testdata/Prelude.lc 355:23-355:69 Mat 4 4 Float
1017testdata/Prelude.lc 356:16-356:62 VecS Float 4 -> Mat 4 4 Float 1064testdata/Prelude.lc 355:34-355:35 V10
1018testdata/Prelude.lc 356:16-356:75 Mat 4 4 Float 1065testdata/Prelude.lc 355:36-355:39 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c
1019testdata/Prelude.lc 356:21-356:33 VecS Float 4 1066testdata/Prelude.lc 355:40-355:50 Float -> Mat 4 4 Float
1020testdata/Prelude.lc 356:22-356:24 {a} -> a -> a -> a -> a -> VecS a 4 1067testdata/Prelude.lc 355:40-355:52 Mat 4 4 Float
1021testdata/Prelude.lc 356:22-356:26 V1 -> V2 -> V3 -> VecS V4 4 1068testdata/Prelude.lc 355:51-355:52 V4
1022testdata/Prelude.lc 356:22-356:28 V2 -> V3 -> VecS V4 4 1069testdata/Prelude.lc 355:53-355:56 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c
1023testdata/Prelude.lc 356:22-356:30 V2 -> VecS V3 4 1070testdata/Prelude.lc 355:57-355:67 Float -> Mat 4 4 Float
1024testdata/Prelude.lc 356:25-356:26 V1 1071testdata/Prelude.lc 355:57-355:69 Mat 4 4 Float
1025testdata/Prelude.lc 356:27-356:28 V1 1072testdata/Prelude.lc 355:68-355:69 V1
1026testdata/Prelude.lc 356:29-356:30 V1 1073testdata/Prelude.lc 371:1-371:6 Float -> VecS Float 4 -> VecS Float 4
1027testdata/Prelude.lc 356:31-356:32 V1 1074testdata/Prelude.lc 371:13-371:14 V3
1028testdata/Prelude.lc 356:34-356:46 VecS Float 4 1075testdata/Prelude.lc 371:13-371:16 V2->V3
1029testdata/Prelude.lc 356:35-356:37 {a} -> a -> a -> a -> a -> VecS a 4 1076testdata/Prelude.lc 371:13-371:29 VecS Float 4
1030testdata/Prelude.lc 356:35-356:39 V1 -> V2 -> V3 -> VecS V4 4 1077testdata/Prelude.lc 371:15-371:16 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
1031testdata/Prelude.lc 356:35-356:41 VecScalar V3 Float -> VecScalar V4 Float -> VecS (VecScalar V5 Float) 4 1078testdata/Prelude.lc 371:17-371:19 {a} -> a -> a -> a -> a -> VecS a 4
1032testdata/Prelude.lc 356:35-356:43 VecScalar V3 Float -> VecS (VecScalar V4 Float) 4 1079testdata/Prelude.lc 371:17-371:21 V4 -> V5 -> V6 -> VecS V7 4
1033testdata/Prelude.lc 356:38-356:39 V1 1080testdata/Prelude.lc 371:17-371:23 V4 -> V5 -> VecS V6 4
1034testdata/Prelude.lc 356:40-356:41 VecScalar V4 Float 1081testdata/Prelude.lc 371:17-371:25 V4 -> VecS V5 4
1035testdata/Prelude.lc 356:42-356:43 VecScalar V3 Float 1082testdata/Prelude.lc 371:17-371:29 VecS Float 4
1036testdata/Prelude.lc 356:44-356:45 V1 1083testdata/Prelude.lc 371:20-371:21 V5
1037testdata/Prelude.lc 356:47-356:62 VecS Float 4 1084testdata/Prelude.lc 371:22-371:23 V4
1038testdata/Prelude.lc 356:48-356:50 {a} -> a -> a -> a -> a -> VecS a 4 1085testdata/Prelude.lc 371:24-371:25 V4
1039testdata/Prelude.lc 356:48-356:52 V1 -> V2 -> V3 -> VecS V4 4 1086testdata/Prelude.lc 371:26-371:29 Float
1040testdata/Prelude.lc 356:48-356:57 Float -> Float -> VecS Float 4 1087testdata/Prelude.lc 373:11-373:16 Type
1041testdata/Prelude.lc 356:48-356:59 Float -> VecS Float 4 1088testdata/Prelude.lc 373:11-374:58 Float -> Float -> List Float | V0->V1
1042testdata/Prelude.lc 356:51-356:52 V1 1089testdata/Prelude.lc 373:20-373:25 Type
1043testdata/Prelude.lc 356:53-356:57 Float 1090testdata/Prelude.lc 373:20-373:36 Type
1044testdata/Prelude.lc 356:54-356:55 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a 1091testdata/Prelude.lc 373:29-373:36 Type
1045testdata/Prelude.lc 356:55-356:56 Float 1092testdata/Prelude.lc 373:30-373:35 Type
1046testdata/Prelude.lc 356:58-356:59 Float 1093testdata/Prelude.lc 374:1-374:7 Float -> Float -> List Float
1047testdata/Prelude.lc 356:60-356:61 V1 1094testdata/Prelude.lc 374:14-374:58 Float -> Float -> List Float | Float -> List Float | List Float
1048testdata/Prelude.lc 356:63-356:75 VecS Float 4 1095testdata/Prelude.lc 374:17-374:18 Float
1049testdata/Prelude.lc 356:64-356:66 {a} -> a -> a -> a -> a -> VecS a 4 1096testdata/Prelude.lc 374:17-374:20 Float->Bool
1050testdata/Prelude.lc 356:64-356:68 V1 -> V2 -> V3 -> VecS V4 4 1097testdata/Prelude.lc 374:17-374:22 Bool
1051testdata/Prelude.lc 356:64-356:70 V2 -> V3 -> VecS V4 4 1098testdata/Prelude.lc 374:17-374:30 List V0 -> List V1
1052testdata/Prelude.lc 356:64-356:72 V2 -> VecS V3 4 1099testdata/Prelude.lc 374:19-374:20 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b Bool
1053testdata/Prelude.lc 356:67-356:68 V1 1100testdata/Prelude.lc 374:21-374:22 Float
1054testdata/Prelude.lc 356:69-356:70 V1 1101testdata/Prelude.lc 374:28-374:30 {a} -> List a
1055testdata/Prelude.lc 356:71-356:72 V1 1102testdata/Prelude.lc 374:36-374:37 Float
1056testdata/Prelude.lc 356:73-356:74 V1 1103testdata/Prelude.lc 374:36-374:38 List Float -> List Float
1057testdata/Prelude.lc 358:9-358:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1104testdata/Prelude.lc 374:36-374:58 List Float
1058testdata/Prelude.lc 358:9-358:14 VecScalar V0 Float 1105testdata/Prelude.lc 374:37-374:38 {a} -> a -> List a -> List a
1059testdata/Prelude.lc 358:13-358:14 V2 1106testdata/Prelude.lc 374:39-374:45 Float -> Float -> List Float
1060testdata/Prelude.lc 359:9-359:12 {a} -> {b:Nat} -> {c : a ~ VecScalar b Float} -> a->a 1107testdata/Prelude.lc 374:39-374:56 Float -> List Float
1061testdata/Prelude.lc 359:9-359:14 VecScalar V1 Float 1108testdata/Prelude.lc 374:39-374:58 List Float
1062testdata/Prelude.lc 359:13-359:14 VecScalar V2 Float 1109testdata/Prelude.lc 374:46-374:56 Float
1063testdata/Prelude.lc 361:1-361:14 Float -> Float -> Float -> Mat 4 4 Float 1110testdata/Prelude.lc 374:47-374:48 Float
1064testdata/Prelude.lc 361:23-361:33 Float -> Mat 4 4 Float 1111testdata/Prelude.lc 374:47-374:51 Float->Float
1065testdata/Prelude.lc 361:23-361:35 Mat 4 4 Float 1112testdata/Prelude.lc 374:49-374:51 {a} -> {b : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a
1066testdata/Prelude.lc 361:23-361:39 Mat 4 V0 Float -> Mat 4 V1 Float 1113testdata/Prelude.lc 374:52-374:55 Float
1067testdata/Prelude.lc 361:23-361:52 Mat 4 4 Float 1114testdata/Prelude.lc 374:57-374:58 Float
1068testdata/Prelude.lc 361:23-361:56 Mat 4 V0 Float -> Mat 4 V1 Float 1115testdata/Prelude.lc 376:9-376:24 Type
1069testdata/Prelude.lc 361:23-361:69 Mat 4 4 Float 1116testdata/Prelude.lc 376:9-378:30 V0->V1 | {a} -> List a -> Int->a
1070testdata/Prelude.lc 361:34-361:35 V10 1117testdata/Prelude.lc 376:10-376:11 V1
1071testdata/Prelude.lc 361:36-361:39 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c 1118testdata/Prelude.lc 376:16-376:19 Type
1072testdata/Prelude.lc 361:40-361:50 Float -> Mat 4 4 Float 1119testdata/Prelude.lc 376:16-376:24 Type
1073testdata/Prelude.lc 361:40-361:52 Mat 4 4 Float 1120testdata/Prelude.lc 376:23-376:24 Type
1074testdata/Prelude.lc 361:51-361:52 V4 1121testdata/Prelude.lc 377:2-377:7 List V2
1075testdata/Prelude.lc 361:53-361:56 {a:Nat} -> {b:Nat} -> {c} -> {d:Nat} -> Mat a b c -> Mat b d c -> Mat a d c 1122testdata/Prelude.lc 377:2-378:30 Int->V2 | List V0 -> Int->V2 | V2
1076testdata/Prelude.lc 361:57-361:67 Float -> Mat 4 4 Float 1123testdata/Prelude.lc 377:10-377:12 {a} -> List a -> Int->a
1077testdata/Prelude.lc 361:57-361:69 Mat 4 4 Float 1124testdata/Prelude.lc 377:19-377:20 V3
1078testdata/Prelude.lc 361:68-361:69 V1 1125testdata/Prelude.lc 377:19-378:30 Bool->V4 | List V2 -> V2 | V1 -> List V2 -> V2 | V2
1079testdata/Prelude.lc 377:1-377:6 Float -> VecS Float 4 -> VecS Float 4 1126testdata/Prelude.lc 378:19-378:21 List V5
1080testdata/Prelude.lc 377:13-377:14 V3 1127testdata/Prelude.lc 378:19-378:24 Int->V5
1081testdata/Prelude.lc 377:13-377:16 V2->V3 1128testdata/Prelude.lc 378:19-378:30 V3
1082testdata/Prelude.lc 377:13-377:29 VecS Float 4 1129testdata/Prelude.lc 378:22-378:24 {a} -> List a -> Int->a
1083testdata/Prelude.lc 377:15-377:16 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a 1130testdata/Prelude.lc 378:25-378:30 Int
1084testdata/Prelude.lc 377:17-377:19 {a} -> a -> a -> a -> a -> VecS a 4 1131testdata/Prelude.lc 378:26-378:27 Int
1085testdata/Prelude.lc 377:17-377:21 V4 -> V5 -> V6 -> VecS V7 4 1132testdata/Prelude.lc 378:26-378:28 Int->Int
1086testdata/Prelude.lc 377:17-377:23 V4 -> V5 -> VecS V6 4 1133testdata/Prelude.lc 378:27-378:28 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
1087testdata/Prelude.lc 377:17-377:25 V4 -> VecS V5 4 1134testdata/Prelude.lc 378:28-378:29 V1
1088testdata/Prelude.lc 377:17-377:29 VecS Float 4
1089testdata/Prelude.lc 377:20-377:21 V5
1090testdata/Prelude.lc 377:22-377:23 V4
1091testdata/Prelude.lc 377:24-377:25 V4
1092testdata/Prelude.lc 377:26-377:29 Float
1093testdata/Prelude.lc 379:11-379:16 Type
1094testdata/Prelude.lc 379:11-380:58 Float -> Float -> List Float | V0->V1
1095testdata/Prelude.lc 379:20-379:25 Type
1096testdata/Prelude.lc 379:20-379:36 Type
1097testdata/Prelude.lc 379:29-379:36 Type
1098testdata/Prelude.lc 379:30-379:35 Type
1099testdata/Prelude.lc 380:1-380:7 Float -> Float -> List Float
1100testdata/Prelude.lc 380:14-380:58 Float -> Float -> List Float | Float -> List Float | List Float
1101testdata/Prelude.lc 380:17-380:18 Float
1102testdata/Prelude.lc 380:17-380:20 Float->Bool
1103testdata/Prelude.lc 380:17-380:22 Bool
1104testdata/Prelude.lc 380:17-380:30 List V0 -> List V1
1105testdata/Prelude.lc 380:19-380:20 {a} -> {b:Nat} -> {c : Num a} -> VecScalar b a -> VecScalar b a -> VecScalar b Bool
1106testdata/Prelude.lc 380:21-380:22 Float
1107testdata/Prelude.lc 380:28-380:30 {a} -> List a
1108testdata/Prelude.lc 380:36-380:37 Float
1109testdata/Prelude.lc 380:36-380:38 List Float -> List Float
1110testdata/Prelude.lc 380:36-380:58 List Float
1111testdata/Prelude.lc 380:37-380:38 {a} -> a -> List a -> List a
1112testdata/Prelude.lc 380:39-380:45 Float -> Float -> List Float
1113testdata/Prelude.lc 380:39-380:56 Float -> List Float
1114testdata/Prelude.lc 380:39-380:58 List Float
1115testdata/Prelude.lc 380:46-380:56 Float
1116testdata/Prelude.lc 380:47-380:48 Float
1117testdata/Prelude.lc 380:47-380:51 Float->Float
1118testdata/Prelude.lc 380:49-380:51 {a} -> {b : Num (MatVecScalarElem a)} -> a -> MatVecScalarElem a -> a
1119testdata/Prelude.lc 380:52-380:55 Float
1120testdata/Prelude.lc 380:57-380:58 Float
1121testdata/Prelude.lc 382:9-382:24 Type
1122testdata/Prelude.lc 382:9-384:30 V0->V1 | {a} -> List a -> Int->a
1123testdata/Prelude.lc 382:10-382:11 V1
1124testdata/Prelude.lc 382:16-382:19 Type
1125testdata/Prelude.lc 382:16-382:24 Type
1126testdata/Prelude.lc 382:23-382:24 Type
1127testdata/Prelude.lc 383:2-383:7 List V2
1128testdata/Prelude.lc 383:2-384:30 Int->V2 | List V0 -> Int->V2 | V2
1129testdata/Prelude.lc 383:10-383:12 {a} -> List a -> Int->a
1130testdata/Prelude.lc 383:19-383:20 V3
1131testdata/Prelude.lc 383:19-384:30 Bool->V4 | List V2 -> V2 | V1 -> List V2 -> V2 | V2
1132testdata/Prelude.lc 384:19-384:21 List V5
1133testdata/Prelude.lc 384:19-384:24 Int->V5
1134testdata/Prelude.lc 384:19-384:30 V3
1135testdata/Prelude.lc 384:22-384:24 {a} -> List a -> Int->a
1136testdata/Prelude.lc 384:25-384:30 Int
1137testdata/Prelude.lc 384:26-384:27 Int
1138testdata/Prelude.lc 384:26-384:28 Int->Int
1139testdata/Prelude.lc 384:27-384:28 {a} -> {b : Num (MatVecScalarElem a)} -> a -> a->a
1140testdata/Prelude.lc 384:28-384:29 V1
diff --git a/testdata/helloWorld.out b/testdata/helloWorld.out
index fdd43db8..68143292 100644
--- a/testdata/helloWorld.out
+++ b/testdata/helloWorld.out
@@ -1 +1 @@
Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("s1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 s1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = s1;\ngl_Position = ( ( MVP ) * ( s1 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(true)) discard;\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("t1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 t1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = t1;\ngl_Position = ( ( MVP ) * ( t1 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(true)) discard;\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file