build devShells.x86_64-linux.ghc9102

Reproduce this run
  1. 1249.50 s [algebraic-graphs] OK: size (overlay x y) == size x + size y
  2. 1249.50 s [algebraic-graphs] OK: size (connect x y) == size x + size y
  3. 1249.50 s [algebraic-graphs] OK: size x >= 1
  4. 1249.50 s [algebraic-graphs] OK: size x >= vertexCount x
  5. 1249.50 s [algebraic-graphs]
  6. 1249.50 s [algebraic-graphs] ============ Labelled.Graph.hasVertex ============
  7. 1249.50 s [algebraic-graphs] OK: hasVertex x empty == False
  8. 1249.50 s [algebraic-graphs] OK: hasVertex x (vertex y) == (x == y)
  9. 1249.50 s [algebraic-graphs] OK: hasVertex x . removeVertex x == const False
  10. 1249.50 s [algebraic-graphs]
  11. 1249.50 s [algebraic-graphs] ============ Labelled.Graph.hasEdge ============
  12. 1249.50 s [algebraic-graphs] OK: hasEdge x y empty == False
  13. 1249.50 s [algebraic-graphs] OK: hasEdge x y (vertex z) == False
  14. 1249.50 s [algebraic-graphs] OK: hasEdge x y (edge e x y) == (e /= zero)
  15. 1249.50 s [algebraic-graphs] OK: hasEdge x y . removeEdge x y == const False
  16. 1249.50 s [algebraic-graphs] OK: hasEdge x y == not . null . filter (\(_,ex,ey) -> ex == x && ey == y) . edgeList
  17. 1249.50 s [algebraic-graphs]
  18. 1249.50 s [algebraic-graphs] ============ Labelled.Graph.edgeLabel ============
  19. 1249.50 s [algebraic-graphs] OK: edgeLabel x y empty == zero
  20. 1249.50 s [algebraic-graphs] OK: edgeLabel x y (vertex z) == zero
  21. 1249.50 s [algebraic-graphs] OK: edgeLabel x y (edge e x y) == e
  22. 1249.50 s [algebraic-graphs] OK: edgeLabel s t (overlay x y) == edgeLabel s t x + edgeLabel s t y
  23. 1249.50 s [algebraic-graphs]
  24. 1249.50 s [algebraic-graphs] ============ Labelled.Graph.vertexCount ============
  25. 1249.50 s [algebraic-graphs] OK: vertexCount empty == 0
  26. 1249.50 s [algebraic-graphs] OK: vertexCount (vertex x) == 1
  27. 1249.50 s [algebraic-graphs] OK: vertexCount == length . vertexList
  28. 1249.50 s [algebraic-graphs] OK: vertexCount x < vertexCount y ==> x < y
  29. 1249.50 s [algebraic-graphs]
  30. 1249.50 s [algebraic-graphs] ============ Labelled.Graph.edgeCount ============
  31. 1249.50 s [algebraic-graphs] OK: edgeCount empty == 0
  32. 1249.50 s [algebraic-graphs] OK: edgeCount (vertex x) == 0
  33. 1249.50 s [algebraic-graphs] OK: edgeCount (edge e x y) == if e == zero then 0 else 1
  34. 1249.50 s [algebraic-graphs] OK: edgeCount == length . edgeList
  35. 1249.50 s [algebraic-graphs]
  36. 1249.50 s [algebraic-graphs] ============ Labelled.Graph.vertexList ============
  37. 1249.50 s [algebraic-graphs] OK: vertexList empty == []
  38. 1249.50 s [algebraic-graphs] OK: vertexList (vertex x) == [x]
  39. 1249.50 s [algebraic-graphs] OK: vertexList . vertices == nub . sort
  40. 1249.50 s [algebraic-graphs]
  41. 1249.50 s [algebraic-graphs] ============ Labelled.Graph.edgeList ============
  42. 1249.50 s [algebraic-graphs] OK: edgeList empty == []
  43. 1249.50 s [algebraic-graphs] OK: edgeList (vertex x) == []
  44. 1249.50 s [algebraic-graphs] OK: edgeList (edge e x y) == if e == zero then [] else [(e,x,y)]
  45. 1249.50 s [algebraic-graphs]
  46. 1249.50 s [algebraic-graphs] ============ Labelled.Graph.vertexSet ============
  47. 1249.50 s [algebraic-graphs] OK: vertexSet empty == Set.empty
  48. 1249.50 s [algebraic-graphs] OK: vertexSet . vertex == Set.singleton
  49. 1249.50 s [algebraic-graphs] OK: vertexSet . vertices == Set.fromList
  50. 1249.50 s [algebraic-graphs]
  51. 1249.50 s [algebraic-graphs] ============ Labelled.Graph.edgeSet ============
  52. 1249.50 s [algebraic-graphs] OK: edgeSet empty == Set.empty
  53. 1249.50 s [algebraic-graphs] OK: edgeSet (vertex x) == Set.empty
  54. 1249.50 s [algebraic-graphs] OK: edgeSet (edge e x y) == if e == zero then Set.empty else Set.singleton (e,x,y)
  55. 1249.50 s [algebraic-graphs]
  56. 1249.50 s [algebraic-graphs] ============ Labelled.Graph.preSet ============
  57. 1249.50 s [algebraic-graphs] OK: preSet x empty == Set.empty
  58. 1249.50 s [algebraic-graphs] OK: preSet x (vertex x) == Set.empty
  59. 1251.84 s [algebraic-graphs] OK: preSet 1 (edge e 1 2) == Set.empty
  60. 1251.96 s [algebraic-graphs] OK: preSet y (edge e x y) == if e == zero then Set.empty else Set.fromList [x]
  61. 1251.96 s [algebraic-graphs]
  62. 1251.96 s [algebraic-graphs] ============ Labelled.Graph.postSet ============
  63. 1251.96 s [algebraic-graphs] OK: postSet x empty == Set.empty
  64. 1251.96 s [algebraic-graphs] OK: postSet x (vertex x) == Set.empty
  65. 1251.96 s [algebraic-graphs] OK: postSet x (edge e x y) == if e == zero then Set.empty else Set.fromList [y]
  66. 1251.96 s [algebraic-graphs] OK: postSet 2 (edge e 1 2) == Set.empty
  67. 1251.96 s [algebraic-graphs]
  68. 1251.96 s [algebraic-graphs] ============ Labelled.Graph.removeVertex ============
  69. 1251.96 s [algebraic-graphs] OK: removeVertex x (vertex x) == empty
  70. 1251.96 s [algebraic-graphs] OK: removeVertex 1 (vertex 2) == vertex 2
  71. 1251.96 s [algebraic-graphs] OK: removeVertex x (edge e x x) == empty
  72. 1251.97 s [algebraic-graphs] OK: removeVertex 1 (edge e 1 2) == vertex 2
  73. 1251.97 s [algebraic-graphs] OK: removeVertex x . removeVertex x == removeVertex x
  74. 1251.97 s [algebraic-graphs]
  75. 1251.97 s [algebraic-graphs] ============ Labelled.Graph.removeEdge ============
  76. 1251.97 s [algebraic-graphs] OK: removeEdge x y (edge e x y) == vertices [x,y]
  77. 1251.97 s [algebraic-graphs] OK: removeEdge x y . removeEdge x y == removeEdge x y
  78. 1251.97 s [algebraic-graphs] OK: removeEdge x y . removeVertex x == removeVertex x
  79. 1251.97 s [algebraic-graphs] OK: removeEdge 1 1 (1 * 1 * 2 * 2) == 1 * 2 * 2
  80. 1251.97 s [algebraic-graphs] OK: removeEdge 1 2 (1 * 1 * 2 * 2) == 1 * 1 + 2 * 2
  81. 1251.97 s [algebraic-graphs]
  82. 1251.97 s [algebraic-graphs] ============ Labelled.Graph.replaceVertex ============
  83. 1251.97 s [algebraic-graphs] OK: replaceVertex x x == id
  84. 1251.97 s [algebraic-graphs] OK: replaceVertex x y (vertex x) == vertex y
  85. 1251.97 s [algebraic-graphs] OK: replaceVertex x y == fmap (\v -> if v == x then y else v)
  86. 1251.97 s [algebraic-graphs]
  87. 1251.97 s [algebraic-graphs] ============ Labelled.Graph.replaceEdge ============
  88. 1251.97 s [algebraic-graphs] OK: replaceEdge e x y z == overlay (removeEdge x y z) (edge e x y)
  89. 1251.97 s [algebraic-graphs] OK: replaceEdge e x y (edge f x y) == edge e x y
  90. 1251.97 s [algebraic-graphs] OK: edgeLabel x y (replaceEdge e x y z) == e
  91. 1251.97 s [algebraic-graphs]
  92. 1251.97 s [algebraic-graphs] ============ Labelled.Graph.transpose ============
  93. 1251.97 s [algebraic-graphs] OK: transpose empty == empty
  94. 1251.97 s [algebraic-graphs] OK: transpose (vertex x) == vertex x
  95. 1251.97 s [algebraic-graphs] OK: transpose (edge e x y) == edge e y x
  96. 1251.97 s [algebraic-graphs] OK: transpose . transpose == id
  97. 1251.97 s [algebraic-graphs]
  98. 1251.97 s [algebraic-graphs] ============ Labelled.Graph.fmap ============
  99. 1251.97 s [algebraic-graphs] OK: fmap f empty == empty
  100. 1251.97 s [algebraic-graphs] OK: fmap f (vertex x) == vertex (f x)
  101. 1251.97 s [algebraic-graphs] OK: fmap f (edge e x y) == edge e (f x) (f y)
  102. 1251.97 s [algebraic-graphs] OK: fmap id == id
  103. 1251.97 s [algebraic-graphs] OK: fmap f . fmap g == fmap (f . g)
  104. 1251.97 s [algebraic-graphs]
  105. 1251.97 s [algebraic-graphs] ============ Labelled.Graph.emap ============
  106. 1251.97 s [algebraic-graphs] OK: emap h empty == empty
  107. 1251.97 s [algebraic-graphs] OK: emap h (vertex x) == vertex x
  108. 1251.97 s [algebraic-graphs] OK: emap h (edge e x y) == edge (h e) x y
  109. 1251.97 s [algebraic-graphs] OK: emap h (overlay x y) == overlay (emap h x) (emap h y)
  110. 1251.97 s [algebraic-graphs] OK: emap h (connect e x y) == connect (h e) (emap h x) (emap h y)
  111. 1251.97 s [algebraic-graphs] OK: emap id == id
  112. 1251.97 s [algebraic-graphs] OK: emap g . emap h == emap (g . h)
  113. 1251.97 s [algebraic-graphs]
  114. 1251.97 s [algebraic-graphs] ============ Labelled.Graph.induce ============
  115. 1251.97 s [algebraic-graphs] OK: induce (const True ) x == x
  116. 1251.97 s [algebraic-graphs] OK: induce (const False) x == empty
  117. 1251.97 s [algebraic-graphs] OK: induce (/= x) == removeVertex x
  118. 1251.97 s [algebraic-graphs] OK: induce p . induce q == induce (\x -> p x && q x)
  119. 1251.97 s [algebraic-graphs] OK: isSubgraphOf (induce p x) x == True
  120. 1251.97 s [algebraic-graphs]
  121. 1251.97 s [algebraic-graphs] ============ Labelled.Graph.induceJust ============
  122. 1251.97 s [algebraic-graphs] OK: induceJust (vertex Nothing) == empty
  123. 1251.97 s [algebraic-graphs] OK: induceJust (edge (Just x) Nothing) == vertex x
  124. 1251.97 s [algebraic-graphs] OK: induceJust . gmap Just == id
  125. 1251.97 s [algebraic-graphs] OK: induceJust . gmap (\x -> if p x then Just x else Nothing) == induce p
  126. 1251.97 s [algebraic-graphs]
  127. 1251.97 s [algebraic-graphs] ============ Labelled.Graph.closure ============
  128. 1251.97 s [algebraic-graphs] OK: closure empty == empty
  129. 1251.97 s [algebraic-graphs] OK: closure (vertex x) == edge one x x
  130. 1251.97 s [algebraic-graphs] OK: closure (edge e x x) == edge one x x
  131. 1251.97 s [algebraic-graphs] OK: closure (edge e x y) == edges [(one,x,x), (e,x,y), (one,y,y)]
  132. 1251.97 s [algebraic-graphs] OK: closure == reflexiveClosure . transitiveClosure
  133. 1251.97 s [algebraic-graphs] OK: closure == transitiveClosure . reflexiveClosure
  134. 1251.97 s [algebraic-graphs] OK: closure . closure == closure
  135. 1251.97 s [algebraic-graphs] OK: postSet x (closure y) == Set.fromList (reachable y x)
  136. 1251.97 s [algebraic-graphs]
  137. 1251.97 s [algebraic-graphs] ============ Labelled.Graph.reflexiveClosure ============
  138. 1251.97 s [algebraic-graphs] OK: reflexiveClosure empty == empty
  139. 1251.97 s [algebraic-graphs] OK: reflexiveClosure (vertex x) == edge one x x
  140. 1251.97 s [algebraic-graphs] OK: reflexiveClosure (edge e x x) == edge one x x
  141. 1251.97 s [algebraic-graphs] OK: reflexiveClosure (edge e x y) == edges [(one,x,x), (e,x,y), (one,y,y)]
  142. 1251.97 s [algebraic-graphs] OK: reflexiveClosure . reflexiveClosure == reflexiveClosure
  143. 1251.97 s [algebraic-graphs]
  144. 1251.97 s [algebraic-graphs] ============ Labelled.Graph.symmetricClosure ============
  145. 1251.97 s [algebraic-graphs] OK: symmetricClosure empty == empty
  146. 1251.97 s [algebraic-graphs] OK: symmetricClosure (vertex x) == vertex x
  147. 1251.97 s [algebraic-graphs] OK: symmetricClosure (edge e x y) == edges [(e,x,y), (e,y,x)]
  148. 1251.97 s [algebraic-graphs] OK: symmetricClosure x == overlay x (transpose x)
  149. 1251.97 s [algebraic-graphs] OK: symmetricClosure . symmetricClosure == symmetricClosure
  150. 1251.97 s [algebraic-graphs]
  151. 1251.97 s [algebraic-graphs] ============ Labelled.Graph.transitiveClosure ============
  152. 1251.97 s [algebraic-graphs] OK: transitiveClosure empty == empty
  153. 1251.97 s [algebraic-graphs] OK: transitiveClosure (vertex x) == vertex x
  154. 1251.97 s [algebraic-graphs] OK: transitiveClosure (edge e x y) == edge e x y
  155. 1251.97 s [algebraic-graphs] OK: transitiveClosure . transitiveClosure == transitiveClosure
  156. 1251.97 s [algebraic-graphs]
  157. 1251.97 s [algebraic-graphs] ============ Labelled.Graph.context ============
  158. 1251.97 s [algebraic-graphs] OK: context (const False) x == Nothing
  159. 1251.97 s [algebraic-graphs] OK: context (== 1) (edge e 1 2) == if e == zero then Just (Context [] []) else Just (Context [] [(e,2)])
  160. 1251.97 s [algebraic-graphs] OK: context (== 2) (edge e 1 2) == if e == zero then Just (Context [] []) else Just (Context [(e,1)] [] )
  161. 1251.97 s [algebraic-graphs] OK: context (const True ) (edge e 1 2) == if e == zero then Just (Context [] []) else Just (Context [(e,1)] [(e,2)])
  162. 1251.97 s [algebraic-graphs] OK: context (== 4) (3 * 1 * 4 * 1 * 5) == Just (Context [(one,3), (one,1)] [(one,1), (one,5)])
  163. 1251.97 s [algebraic-graphs]
  164. 1251.97 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap ============
  165. 1251.97 s [algebraic-graphs] OK: Axioms of non-empty graphs
  166. 1251.97 s [algebraic-graphs] OK: Theorems of non-empty graphs
  167. 1251.97 s [algebraic-graphs]
  168. 1251.97 s [algebraic-graphs] ============ Ord (NonEmpty.AdjacencyMap a) ============
  169. 1251.97 s [algebraic-graphs] OK: vertex 1 < vertex 2
  170. 1251.97 s [algebraic-graphs] OK: vertex 3 < edge 1 2
  171. 1251.97 s [algebraic-graphs] OK: vertex 1 < edge 1 1
  172. 1251.97 s [algebraic-graphs] OK: edge 1 1 < edge 1 2
  173. 1251.97 s [algebraic-graphs] OK: edge 1 2 < edge 1 1 + edge 2 2
  174. 1251.97 s [algebraic-graphs] OK: edge 1 2 < edge 1 3
  175. 1251.97 s [algebraic-graphs] OK: x <= x + y
  176. 1251.97 s [algebraic-graphs] OK: x + y <= x * y
  177. 1251.97 s [algebraic-graphs]
  178. 1251.97 s [algebraic-graphs] ============ Show (NonEmpty.AdjacencyMap a) ============
  179. 1251.97 s [algebraic-graphs] OK: show (1 :: AdjacencyMap Int) == "vertex 1"
  180. 1251.97 s [algebraic-graphs] OK: show (1 + 2 :: AdjacencyMap Int) == "vertices1 [1,2]"
  181. 1251.97 s [algebraic-graphs] OK: show (1 * 2 :: AdjacencyMap Int) == "edge 1 2"
  182. 1251.97 s [algebraic-graphs] OK: show (1 * 2 * 3 :: AdjacencyMap Int) == "edges1 [(1,2),(1,3),(2,3)]"
  183. 1251.97 s [algebraic-graphs] OK: show (1 * 2 + 3 :: AdjacencyMap Int) == "overlay (vertex 3) (edge 1 2)"
  184. 1251.97 s [algebraic-graphs] OK: show (vertex (-1) :: AdjacencyMap Int) == "vertex (-1)"
  185. 1251.97 s [algebraic-graphs] OK: show (vertex (-1) + vertex (-2) :: AdjacencyMap Int) == "vertices1 [-2,-1]"
  186. 1251.97 s [algebraic-graphs] OK: show (vertex (-1) * vertex (-2) :: AdjacencyMap Int) == "edge (-1) (-2)"
  187. 1251.97 s [algebraic-graphs] OK: show (vertex (-1) * vertex (-2) * vertex (-3) :: AdjacencyMap Int) == "edges1 [(-2,-3),(-1,-3),(-1,-2)]"
  188. 1251.97 s [algebraic-graphs] OK: show (vertex (-1) * vertex (-2) + vertex (-3) :: AdjacencyMap Int) == "overlay (vertex (-3)) (edge (-1) (-2))"
  189. 1251.97 s [algebraic-graphs]
  190. 1251.97 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.toNonEmpty ============
  191. 1251.97 s [algebraic-graphs] OK: toNonEmpty empty == Nothing
  192. 1251.97 s [algebraic-graphs] OK: toNonEmpty . fromNonEmpty == Just
  193. 1251.97 s [algebraic-graphs]
  194. 1251.97 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.fromNonEmpty ============
  195. 1251.97 s [algebraic-graphs] OK: isEmpty . fromNonEmpty == const False
  196. 1251.97 s [algebraic-graphs]
  197. 1251.97 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.vertex ============
  198. 1251.97 s [algebraic-graphs] OK: hasVertex x (vertex y) == (x == y)
  199. 1251.97 s [algebraic-graphs] OK: vertexCount (vertex x) == 1
  200. 1251.97 s [algebraic-graphs] OK: edgeCount (vertex x) == 0
  201. 1251.97 s [algebraic-graphs]
  202. 1251.97 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.edge ============
  203. 1251.97 s [algebraic-graphs] OK: edge x y == connect (vertex x) (vertex y)
  204. 1251.97 s [algebraic-graphs] OK: hasEdge x y (edge x y) == True
  205. 1251.97 s [algebraic-graphs] OK: edgeCount (edge x y) == 1
  206. 1251.97 s [algebraic-graphs] OK: vertexCount (edge 1 1) == 1
  207. 1251.97 s [algebraic-graphs] OK: vertexCount (edge 1 2) == 2
  208. 1251.97 s [algebraic-graphs]
  209. 1251.97 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.overlay ============
  210. 1251.97 s [algebraic-graphs] OK: hasVertex z (overlay x y) == hasVertex z x || hasVertex z y
  211. 1251.97 s [algebraic-graphs] OK: vertexCount (overlay x y) >= vertexCount x
  212. 1251.97 s [algebraic-graphs] OK: vertexCount (overlay x y) <= vertexCount x + vertexCount y
  213. 1251.97 s [algebraic-graphs] OK: edgeCount (overlay x y) >= edgeCount x
  214. 1251.97 s [algebraic-graphs] OK: edgeCount (overlay x y) <= edgeCount x + edgeCount y
  215. 1251.97 s [algebraic-graphs] OK: vertexCount (overlay 1 2) == 2
  216. 1251.97 s [algebraic-graphs] OK: edgeCount (overlay 1 2) == 0
  217. 1251.97 s [algebraic-graphs]
  218. 1251.97 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.connect ============
  219. 1251.97 s [algebraic-graphs] OK: hasVertex z (connect x y) == hasVertex z x || hasVertex z y
  220. 1251.97 s [algebraic-graphs] OK: vertexCount (connect x y) >= vertexCount x
  221. 1251.97 s [algebraic-graphs] OK: vertexCount (connect x y) <= vertexCount x + vertexCount y
  222. 1251.97 s [algebraic-graphs] OK: edgeCount (connect x y) >= edgeCount x
  223. 1251.97 s [algebraic-graphs] OK: edgeCount (connect x y) >= edgeCount y
  224. 1251.97 s [algebraic-graphs] OK: edgeCount (connect x y) >= vertexCount x * vertexCount y
  225. 1251.97 s [algebraic-graphs] OK: edgeCount (connect x y) <= vertexCount x * vertexCount y + edgeCount x + edgeCount y
  226. 1251.97 s [algebraic-graphs] OK: vertexCount (connect 1 2) == 2
  227. 1251.97 s [algebraic-graphs] OK: edgeCount (connect 1 2) == 1
  228. 1251.97 s [algebraic-graphs]
  229. 1251.97 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.vertices1 ============
  230. 1251.97 s [algebraic-graphs] OK: vertices1 [x] == vertex x
  231. 1251.97 s [algebraic-graphs] OK: hasVertex x . vertices1 == elem x
  232. 1251.97 s [algebraic-graphs] OK: vertexCount . vertices1 == length . nub
  233. 1251.97 s [algebraic-graphs] OK: vertexSet . vertices1 == Set.fromList . toList
  234. 1251.97 s [algebraic-graphs]
  235. 1251.97 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.edges1 ============
  236. 1251.97 s [algebraic-graphs] OK: edges1 [(x,y)] == edge x y
  237. 1251.97 s [algebraic-graphs] OK: edges1 == overlays1 . fmap (uncurry edge)
  238. 1251.97 s [algebraic-graphs] OK: edgeCount . edges1 == length . nub
  239. 1251.97 s [algebraic-graphs]
  240. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.overlays1 ============
  241. 1254.59 s [algebraic-graphs] OK: overlays1 [x] == x
  242. 1254.59 s [algebraic-graphs] OK: overlays1 [x,y] == overlay x y
  243. 1254.59 s [algebraic-graphs]
  244. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.connects1 ============
  245. 1254.59 s [algebraic-graphs] OK: connects1 [x] == x
  246. 1254.59 s [algebraic-graphs] OK: connects1 [x,y] == connect x y
  247. 1254.59 s [algebraic-graphs]
  248. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.isSubgraphOf ============
  249. 1254.59 s [algebraic-graphs] OK: isSubgraphOf x (overlay x y) == True
  250. 1254.59 s [algebraic-graphs] OK: isSubgraphOf (overlay x y) (connect x y) == True
  251. 1254.59 s [algebraic-graphs] OK: isSubgraphOf (path1 xs) (circuit1 xs) == True
  252. 1254.59 s [algebraic-graphs] OK: isSubgraphOf x y ==> x <= y
  253. 1254.59 s [algebraic-graphs]
  254. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.hasVertex ============
  255. 1254.59 s [algebraic-graphs] OK: hasVertex x (vertex y) == (x == y)
  256. 1254.59 s [algebraic-graphs]
  257. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.hasEdge ============
  258. 1254.59 s [algebraic-graphs] OK: hasEdge x y (vertex z) == False
  259. 1254.59 s [algebraic-graphs] OK: hasEdge x y (edge x y) == True
  260. 1254.59 s [algebraic-graphs] OK: hasEdge x y . removeEdge x y == const False
  261. 1254.59 s [algebraic-graphs] OK: hasEdge x y == elem (x,y) . edgeList
  262. 1254.59 s [algebraic-graphs]
  263. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.vertexCount ============
  264. 1254.59 s [algebraic-graphs] OK: vertexCount (vertex x) == 1
  265. 1254.59 s [algebraic-graphs] OK: vertexCount x >= 1
  266. 1254.59 s [algebraic-graphs] OK: vertexCount == length . vertexList1
  267. 1254.59 s [algebraic-graphs]
  268. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.edgeCount ============
  269. 1254.59 s [algebraic-graphs] OK: edgeCount (vertex x) == 0
  270. 1254.59 s [algebraic-graphs] OK: edgeCount (edge x y) == 1
  271. 1254.59 s [algebraic-graphs] OK: edgeCount == length . edgeList
  272. 1254.59 s [algebraic-graphs]
  273. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.vertexList1 ============
  274. 1254.59 s [algebraic-graphs] OK: vertexList1 (vertex x) == [x]
  275. 1254.59 s [algebraic-graphs] OK: vertexList1 . vertices1 == nub . sort
  276. 1254.59 s [algebraic-graphs]
  277. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.edgeList ============
  278. 1254.59 s [algebraic-graphs] OK: edgeList (vertex x) == []
  279. 1254.59 s [algebraic-graphs] OK: edgeList (edge x y) == [(x,y)]
  280. 1254.59 s [algebraic-graphs] OK: edgeList (star 2 [3,1]) == [(2,1), (2,3)]
  281. 1254.59 s [algebraic-graphs] OK: edgeList . edges1 == nub . sort . toList
  282. 1254.59 s [algebraic-graphs] OK: edgeList . transpose == sort . map swap . edgeList
  283. 1254.59 s [algebraic-graphs]
  284. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.vertexSet ============
  285. 1254.59 s [algebraic-graphs] OK: vertexSet . vertex == Set.singleton
  286. 1254.59 s [algebraic-graphs] OK: vertexSet . vertices1 == Set.fromList . toList
  287. 1254.59 s [algebraic-graphs] OK: vertexSet . clique1 == Set.fromList . toList
  288. 1254.59 s [algebraic-graphs]
  289. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.edgeSet ============
  290. 1254.59 s [algebraic-graphs] OK: edgeSet (vertex x) == Set.empty
  291. 1254.59 s [algebraic-graphs] OK: edgeSet (edge x y) == Set.singleton (x,y)
  292. 1254.59 s [algebraic-graphs] OK: edgeSet . edges1 == Set.fromList . toList
  293. 1254.59 s [algebraic-graphs]
  294. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.preSet ============
  295. 1254.59 s [algebraic-graphs] OK: preSet x (vertex x) == Set.empty
  296. 1254.59 s [algebraic-graphs] OK: preSet 1 (edge 1 2) == Set.empty
  297. 1254.59 s [algebraic-graphs] OK: preSet y (edge x y) == Set.fromList [x]
  298. 1254.59 s [algebraic-graphs]
  299. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.postSet ============
  300. 1254.59 s [algebraic-graphs] OK: postSet x (vertex x) == Set.empty
  301. 1254.59 s [algebraic-graphs] OK: postSet x (edge x y) == Set.fromList [y]
  302. 1254.59 s [algebraic-graphs] OK: postSet 2 (edge 1 2) == Set.empty
  303. 1254.59 s [algebraic-graphs]
  304. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.path1 ============
  305. 1254.59 s [algebraic-graphs] OK: path1 [x] == vertex x
  306. 1254.59 s [algebraic-graphs] OK: path1 [x,y] == edge x y
  307. 1254.59 s [algebraic-graphs] OK: path1 . reverse == transpose . path1
  308. 1254.59 s [algebraic-graphs]
  309. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.circuit1 ============
  310. 1254.59 s [algebraic-graphs] OK: circuit1 [x] == edge x x
  311. 1254.59 s [algebraic-graphs] OK: circuit1 [x,y] == edges1 [(x,y), (y,x)]
  312. 1254.59 s [algebraic-graphs] OK: circuit1 . reverse == transpose . circuit1
  313. 1254.59 s [algebraic-graphs]
  314. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.clique1 ============
  315. 1254.59 s [algebraic-graphs] OK: clique1 [x] == vertex x
  316. 1254.59 s [algebraic-graphs] OK: clique1 [x,y] == edge x y
  317. 1254.59 s [algebraic-graphs] OK: clique1 [x,y,z] == edges1 [(x,y), (x,z), (y,z)]
  318. 1254.59 s [algebraic-graphs] OK: clique1 (xs <> ys) == connect (clique1 xs) (clique1 ys)
  319. 1254.59 s [algebraic-graphs] OK: clique1 . reverse == transpose . clique1
  320. 1254.59 s [algebraic-graphs]
  321. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.biclique1 ============
  322. 1254.59 s [algebraic-graphs] OK: biclique1 [x1,x2] [y1,y2] == edges1 [(x1,y1), (x1,y2), (x2,y1), (x2,y2)]
  323. 1254.59 s [algebraic-graphs] OK: biclique1 xs ys == connect (vertices1 xs) (vertices1 ys)
  324. 1254.59 s [algebraic-graphs]
  325. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.star ============
  326. 1254.59 s [algebraic-graphs] OK: star x [] == vertex x
  327. 1254.59 s [algebraic-graphs] OK: star x [y] == edge x y
  328. 1254.59 s [algebraic-graphs] OK: star x [y,z] == edges1 [(x,y), (x,z)]
  329. 1254.59 s [algebraic-graphs]
  330. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.stars1 ============
  331. 1254.59 s [algebraic-graphs] OK: stars1 [(x, [] )] == vertex x
  332. 1254.59 s [algebraic-graphs] OK: stars1 [(x, [y])] == edge x y
  333. 1254.59 s [algebraic-graphs] OK: stars1 [(x, ys )] == star x ys
  334. 1254.59 s [algebraic-graphs] OK: stars1 == overlays1 . fmap (uncurry star)
  335. 1254.59 s [algebraic-graphs] OK: overlay (stars1 xs) (stars1 ys) == stars1 (xs <> ys)
  336. 1254.59 s [algebraic-graphs]
  337. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.tree ============
  338. 1254.59 s [algebraic-graphs] OK: tree (Node x []) == vertex x
  339. 1254.59 s [algebraic-graphs] OK: tree (Node x [Node y [Node z []]]) == path1 [x,y,z]
  340. 1254.59 s [algebraic-graphs] OK: tree (Node x [Node y [], Node z []]) == star x [y,z]
  341. 1254.59 s [algebraic-graphs] OK: tree (Node 1 [Node 2 [], Node 3 [Node 4 [], Node 5 []]]) == edges1 [(1,2), (1,3), (3,4), (3,5)]
  342. 1254.59 s [algebraic-graphs]
  343. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.removeVertex1 ============
  344. 1254.59 s [algebraic-graphs] OK: removeVertex1 x (vertex x) == Nothing
  345. 1254.59 s [algebraic-graphs] OK: removeVertex1 1 (vertex 2) == Just (vertex 2)
  346. 1254.59 s [algebraic-graphs] OK: removeVertex1 x (edge x x) == Nothing
  347. 1254.59 s [algebraic-graphs] OK: removeVertex1 1 (edge 1 2) == Just (vertex 2)
  348. 1254.59 s [algebraic-graphs] OK: removeVertex1 x >=> removeVertex1 x == removeVertex1 x
  349. 1254.59 s [algebraic-graphs]
  350. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.removeEdge ============
  351. 1254.59 s [algebraic-graphs] OK: removeEdge x y (edge x y) == vertices1 [x,y]
  352. 1254.59 s [algebraic-graphs] OK: removeEdge x y . removeEdge x y == removeEdge x y
  353. 1254.59 s [algebraic-graphs] OK: removeEdge 1 1 (1 * 1 * 2 * 2) == 1 * 2 * 2
  354. 1254.59 s [algebraic-graphs] OK: removeEdge 1 2 (1 * 1 * 2 * 2) == 1 * 1 + 2 * 2
  355. 1254.59 s [algebraic-graphs]
  356. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.replaceVertex ============
  357. 1254.59 s [algebraic-graphs] OK: replaceVertex x x == id
  358. 1254.59 s [algebraic-graphs] OK: replaceVertex x y (vertex x) == vertex y
  359. 1254.59 s [algebraic-graphs] OK: replaceVertex x y == mergeVertices (== x) y
  360. 1254.59 s [algebraic-graphs]
  361. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.mergeVertices ============
  362. 1254.59 s [algebraic-graphs] OK: mergeVertices (const False) x == id
  363. 1254.59 s [algebraic-graphs] OK: mergeVertices (== x) y == replaceVertex x y
  364. 1254.59 s [algebraic-graphs] OK: mergeVertices even 1 (0 * 2) == 1 * 1
  365. 1254.59 s [algebraic-graphs] OK: mergeVertices odd 1 (3 + 4 * 5) == 4 * 1
  366. 1254.59 s [algebraic-graphs]
  367. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.transpose ============
  368. 1254.59 s [algebraic-graphs] OK: transpose (vertex x) == vertex x
  369. 1254.59 s [algebraic-graphs] OK: transpose (edge x y) == edge y x
  370. 1254.59 s [algebraic-graphs] OK: transpose . transpose == id
  371. 1254.59 s [algebraic-graphs] OK: edgeList . transpose == sort . map swap . edgeList
  372. 1254.59 s [algebraic-graphs]
  373. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.gmap ============
  374. 1254.59 s [algebraic-graphs] OK: gmap f (vertex x) == vertex (f x)
  375. 1254.59 s [algebraic-graphs] OK: gmap f (edge x y) == edge (f x) (f y)
  376. 1254.59 s [algebraic-graphs] OK: gmap id == id
  377. 1254.59 s [algebraic-graphs] OK: gmap f . gmap g == gmap (f . g)
  378. 1254.59 s [algebraic-graphs]
  379. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.induce1 ============
  380. 1254.59 s [algebraic-graphs] OK: induce1 (const True ) x == Just x
  381. 1254.59 s [algebraic-graphs] OK: induce1 (const False) x == Nothing
  382. 1254.59 s [algebraic-graphs] OK: induce1 (/= x) == removeVertex1 x
  383. 1254.59 s [algebraic-graphs] OK: induce1 p >=> induce1 q == induce1 (\x -> p x && q x)
  384. 1254.59 s [algebraic-graphs]
  385. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.induceJust1 ============
  386. 1254.59 s [algebraic-graphs] OK: induceJust1 (vertex Nothing) == Nothing
  387. 1254.59 s [algebraic-graphs] OK: induceJust1 (edge (Just x) Nothing) == Just (vertex x)
  388. 1254.59 s [algebraic-graphs] OK: induceJust1 . gmap Just == Just
  389. 1254.59 s [algebraic-graphs] OK: induceJust1 . gmap (\x -> if p x then Just x else Nothing) == induce1 p
  390. 1254.59 s [algebraic-graphs]
  391. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.closure ============
  392. 1254.59 s [algebraic-graphs] OK: closure (vertex x) == edge x x
  393. 1254.59 s [algebraic-graphs] OK: closure (edge x x) == edge x x
  394. 1254.59 s [algebraic-graphs] OK: closure (edge x y) == edges1 [(x,x), (x,y), (y,y)]
  395. 1254.59 s [algebraic-graphs] OK: closure (path1 $ nub xs) == reflexiveClosure (clique1 $ nub xs)
  396. 1254.59 s [algebraic-graphs] OK: closure == reflexiveClosure . transitiveClosure
  397. 1254.59 s [algebraic-graphs] OK: closure == transitiveClosure . reflexiveClosure
  398. 1254.59 s [algebraic-graphs] OK: closure . closure == closure
  399. 1254.59 s [algebraic-graphs] OK: postSet x (closure y) == Set.fromList (reachable y x)
  400. 1254.59 s [algebraic-graphs]
  401. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.reflexiveClosure ============
  402. 1254.59 s [algebraic-graphs] OK: reflexiveClosure (vertex x) == edge x x
  403. 1254.59 s [algebraic-graphs] OK: reflexiveClosure (edge x x) == edge x x
  404. 1254.59 s [algebraic-graphs] OK: reflexiveClosure (edge x y) == edges1 [(x,x), (x,y), (y,y)]
  405. 1254.59 s [algebraic-graphs] OK: reflexiveClosure . reflexiveClosure == reflexiveClosure
  406. 1254.59 s [algebraic-graphs]
  407. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.symmetricClosure ============
  408. 1254.59 s [algebraic-graphs] OK: symmetricClosure (vertex x) == vertex x
  409. 1254.59 s [algebraic-graphs] OK: symmetricClosure (edge x y) == edges1 [(x,y), (y,x)]
  410. 1254.59 s [algebraic-graphs] OK: symmetricClosure x == overlay x (transpose x)
  411. 1254.59 s [algebraic-graphs] OK: symmetricClosure . symmetricClosure == symmetricClosure
  412. 1254.59 s [algebraic-graphs]
  413. 1254.59 s [algebraic-graphs] ============ NonEmpty.AdjacencyMap.transitiveClosure ============
  414. 1254.59 s [algebraic-graphs] OK: transitiveClosure (vertex x) == vertex x
  415. 1254.59 s [algebraic-graphs] OK: transitiveClosure (edge x y) == edge x y
  416. 1254.59 s [algebraic-graphs] OK: transitiveClosure (path1 $ nub xs) == clique1 (nub $ xs)
  417. 1254.59 s [algebraic-graphs] OK: transitiveClosure . transitiveClosure == transitiveClosure
  418. 1254.59 s [algebraic-graphs]
  419. 1254.59 s [algebraic-graphs] ============ NonEmpty.Graph.============
  420. 1254.59 s [algebraic-graphs] OK: Axioms of non-empty graphs
  421. 1254.59 s [algebraic-graphs] OK: Theorems of non-empty graphs
  422. 1254.59 s [algebraic-graphs]
  423. 1254.59 s [algebraic-graphs] ============ Ord (NonEmpty.Graph a) ============
  424. 1254.59 s [algebraic-graphs] OK: vertex 1 < vertex 2
  425. 1254.59 s [algebraic-graphs] OK: vertex 3 < edge 1 2
  426. 1254.59 s [algebraic-graphs] OK: vertex 1 < edge 1 1
  427. 1254.59 s [algebraic-graphs] OK: edge 1 1 < edge 1 2
  428. 1254.59 s [algebraic-graphs] OK: edge 1 2 < edge 1 1 + edge 2 2
  429. 1254.59 s [algebraic-graphs] OK: edge 1 2 < edge 1 3
  430. 1254.59 s [algebraic-graphs] OK: x <= x + y
  431. 1254.59 s [algebraic-graphs] OK: x + y <= x * y
  432. 1254.59 s [algebraic-graphs]
  433. 1254.59 s [algebraic-graphs] ============ Functor (NonEmpty.Graph a) ============
  434. 1254.59 s [algebraic-graphs] OK: fmap f (vertex x) == vertex (f x)
  435. 1254.59 s [algebraic-graphs] OK: fmap f (edge x y) == edge (f x) (f y)
  436. 1254.59 s [algebraic-graphs] OK: fmap id == id
  437. 1254.59 s [algebraic-graphs] OK: fmap f . fmap g == fmap (f . g)
  438. 1254.59 s [algebraic-graphs]
  439. 1254.59 s [algebraic-graphs] ============ Monad (NonEmpty.Graph a) ============
  440. 1254.59 s [algebraic-graphs] OK: (vertex x >>= f) == f x
  441. 1255.95 s [algebraic-graphs] OK: (edge x y >>= f) == connect (f x) (f y)
  442. 1255.95 s [algebraic-graphs] OK: (vertices1 xs >>= f) == overlays1 (fmap f xs)
  443. 1255.95 s [algebraic-graphs] OK: (x >>= vertex) == x
  444. 1255.95 s [algebraic-graphs] OK: ((x >>= f) >>= g) == (x >>= (\y -> (f y) >>= g))
  445. 1255.95 s [algebraic-graphs]
  446. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.toNonEmpty ============
  447. 1255.95 s [algebraic-graphs] OK: toNonEmpty empty == Nothing
  448. 1255.95 s [algebraic-graphs] OK: toNonEmpty (toGraph x) == Just (x :: NonEmpty.Graph a)
  449. 1255.95 s [algebraic-graphs]
  450. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.vertex ============
  451. 1255.95 s [algebraic-graphs] OK: hasVertex x (vertex y) == (x == y)
  452. 1255.95 s [algebraic-graphs] OK: vertexCount (vertex x) == 1
  453. 1255.95 s [algebraic-graphs] OK: edgeCount (vertex x) == 0
  454. 1255.95 s [algebraic-graphs] OK: size (vertex x) == 1
  455. 1255.95 s [algebraic-graphs]
  456. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.edge ============
  457. 1255.95 s [algebraic-graphs] OK: edge x y == connect (vertex x) (vertex y)
  458. 1255.95 s [algebraic-graphs] OK: hasEdge x y (edge x y) == True
  459. 1255.95 s [algebraic-graphs] OK: edgeCount (edge x y) == 1
  460. 1255.95 s [algebraic-graphs] OK: vertexCount (edge 1 1) == 1
  461. 1255.95 s [algebraic-graphs] OK: vertexCount (edge 1 2) == 2
  462. 1255.95 s [algebraic-graphs]
  463. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.overlay ============
  464. 1255.95 s [algebraic-graphs] OK: hasVertex z (overlay x y) == hasVertex z x || hasVertex z y
  465. 1255.95 s [algebraic-graphs] OK: vertexCount (overlay x y) >= vertexCount x
  466. 1255.95 s [algebraic-graphs] OK: vertexCount (overlay x y) <= vertexCount x + vertexCount y
  467. 1255.95 s [algebraic-graphs] OK: edgeCount (overlay x y) >= edgeCount x
  468. 1255.95 s [algebraic-graphs] OK: edgeCount (overlay x y) <= edgeCount x + edgeCount y
  469. 1255.95 s [algebraic-graphs] OK: size (overlay x y) == size x + size y
  470. 1255.95 s [algebraic-graphs] OK: vertexCount (overlay 1 2) == 2
  471. 1255.95 s [algebraic-graphs] OK: edgeCount (overlay 1 2) == 0
  472. 1255.95 s [algebraic-graphs]
  473. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.overlay1 ============
  474. 1255.95 s [algebraic-graphs] OK: overlay1 empty x == x
  475. 1255.95 s [algebraic-graphs] OK: x /= empty ==> overlay1 x y == overlay (fromJust $ toNonEmpty x) y
  476. 1255.95 s [algebraic-graphs]
  477. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.connect ============
  478. 1255.95 s [algebraic-graphs] OK: hasVertex z (connect x y) == hasVertex z x || hasVertex z y
  479. 1255.95 s [algebraic-graphs] OK: vertexCount (connect x y) >= vertexCount x
  480. 1255.95 s [algebraic-graphs] OK: vertexCount (connect x y) <= vertexCount x + vertexCount y
  481. 1255.95 s [algebraic-graphs] OK: edgeCount (connect x y) >= edgeCount x
  482. 1255.95 s [algebraic-graphs] OK: edgeCount (connect x y) >= edgeCount y
  483. 1255.95 s [algebraic-graphs] OK: edgeCount (connect x y) >= vertexCount x * vertexCount y
  484. 1255.95 s [algebraic-graphs] OK: edgeCount (connect x y) <= vertexCount x * vertexCount y + edgeCount x + edgeCount y
  485. 1255.95 s [algebraic-graphs] OK: size (connect x y) == size x + size y
  486. 1255.95 s [algebraic-graphs] OK: vertexCount (connect 1 2) == 2
  487. 1255.95 s [algebraic-graphs] OK: edgeCount (connect 1 2) == 1
  488. 1255.95 s [algebraic-graphs]
  489. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.vertices1 ============
  490. 1255.95 s [algebraic-graphs] OK: vertices1 [x] == vertex x
  491. 1255.95 s [algebraic-graphs] OK: hasVertex x . vertices1 == elem x
  492. 1255.95 s [algebraic-graphs] OK: vertexCount . vertices1 == length . nub
  493. 1255.95 s [algebraic-graphs] OK: vertexSet . vertices1 == Set.fromList . toList
  494. 1255.95 s [algebraic-graphs]
  495. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.edges1 ============
  496. 1255.95 s [algebraic-graphs] OK: edges1 [(x,y)] == edge x y
  497. 1255.95 s [algebraic-graphs] OK: edges1 == overlays1 . fmap (uncurry edge)
  498. 1255.95 s [algebraic-graphs] OK: edgeCount . edges1 == length . nub
  499. 1255.95 s [algebraic-graphs]
  500. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.overlays1 ============
  501. 1255.95 s [algebraic-graphs] OK: overlays1 [x] == x
  502. 1255.95 s [algebraic-graphs] OK: overlays1 [x,y] == overlay x y
  503. 1255.95 s [algebraic-graphs]
  504. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.connects1 ============
  505. 1255.95 s [algebraic-graphs] OK: connects1 [x] == x
  506. 1255.95 s [algebraic-graphs] OK: connects1 [x,y] == connect x y
  507. 1255.95 s [algebraic-graphs]
  508. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.foldg1 ============
  509. 1255.95 s [algebraic-graphs] OK: foldg1 vertex overlay connect == id
  510. 1255.95 s [algebraic-graphs] OK: foldg1 vertex overlay (flip connect) == transpose
  511. 1255.95 s [algebraic-graphs] OK: foldg1 (const 1) (+) (+) == size
  512. 1255.95 s [algebraic-graphs] OK: foldg1 (== x) (||) (||) == hasVertex x
  513. 1255.95 s [algebraic-graphs]
  514. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.isSubgraphOf ============
  515. 1255.95 s [algebraic-graphs] OK: isSubgraphOf x (overlay x y) == True
  516. 1255.95 s [algebraic-graphs] OK: isSubgraphOf (overlay x y) (connect x y) == True
  517. 1255.95 s [algebraic-graphs] OK: isSubgraphOf (path1 xs) (circuit1 xs) == True
  518. 1255.95 s [algebraic-graphs] OK: isSubgraphOf x y ==> x <= y
  519. 1255.95 s [algebraic-graphs]
  520. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.(===) ============
  521. 1255.95 s [algebraic-graphs] OK: x === x == True
  522. 1255.95 s [algebraic-graphs] OK: x + y === x + y == True
  523. 1255.95 s [algebraic-graphs] OK: 1 + 2 === 2 + 1 == False
  524. 1255.95 s [algebraic-graphs] OK: x + y === x * y == False
  525. 1255.95 s [algebraic-graphs]
  526. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.size ============
  527. 1255.95 s [algebraic-graphs] OK: size (vertex x) == 1
  528. 1255.95 s [algebraic-graphs] OK: size (overlay x y) == size x + size y
  529. 1255.95 s [algebraic-graphs] OK: size (connect x y) == size x + size y
  530. 1255.95 s [algebraic-graphs] OK: size x >= 1
  531. 1255.95 s [algebraic-graphs] OK: size x >= vertexCount x
  532. 1255.95 s [algebraic-graphs]
  533. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.hasVertex ============
  534. 1255.95 s [algebraic-graphs] OK: hasVertex x (vertex y) == (x == y)
  535. 1255.95 s [algebraic-graphs]
  536. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.hasEdge ============
  537. 1255.95 s [algebraic-graphs] OK: hasEdge x y (vertex z) == False
  538. 1255.95 s [algebraic-graphs] OK: hasEdge x y (edge x y) == True
  539. 1255.95 s [algebraic-graphs] OK: hasEdge x y . removeEdge x y == const False
  540. 1255.95 s [algebraic-graphs] OK: hasEdge x y == elem (x,y) . edgeList
  541. 1255.95 s [algebraic-graphs]
  542. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.vertexCount ============
  543. 1255.95 s [algebraic-graphs] OK: vertexCount (vertex x) == 1
  544. 1255.95 s [algebraic-graphs] OK: vertexCount x >= 1
  545. 1255.95 s [algebraic-graphs] OK: vertexCount == length . vertexList1
  546. 1255.95 s [algebraic-graphs]
  547. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.edgeCount ============
  548. 1255.95 s [algebraic-graphs] OK: edgeCount (vertex x) == 0
  549. 1255.95 s [algebraic-graphs] OK: edgeCount (edge x y) == 1
  550. 1255.95 s [algebraic-graphs] OK: edgeCount == length . edgeList
  551. 1255.95 s [algebraic-graphs]
  552. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.vertexList1 ============
  553. 1255.95 s [algebraic-graphs] OK: vertexList1 (vertex x) == [x]
  554. 1255.95 s [algebraic-graphs] OK: vertexList1 . vertices1 == nub . sort
  555. 1255.95 s [algebraic-graphs]
  556. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.edgeList ============
  557. 1255.95 s [algebraic-graphs] OK: edgeList (vertex x) == []
  558. 1255.95 s [algebraic-graphs] OK: edgeList (edge x y) == [(x,y)]
  559. 1255.95 s [algebraic-graphs] OK: edgeList (star 2 [3,1]) == [(2,1), (2,3)]
  560. 1255.95 s [algebraic-graphs] OK: edgeList . edges1 == nub . sort . toList
  561. 1255.95 s [algebraic-graphs] OK: edgeList . transpose == sort . map swap . edgeList
  562. 1255.95 s [algebraic-graphs]
  563. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.vertexSet ============
  564. 1255.95 s [algebraic-graphs] OK: vertexSet . vertex == Set.singleton
  565. 1255.95 s [algebraic-graphs] OK: vertexSet . vertices1 == Set.fromList . toList
  566. 1255.95 s [algebraic-graphs] OK: vertexSet . clique1 == Set.fromList . toList
  567. 1255.95 s [algebraic-graphs]
  568. 1255.95 s [algebraic-graphs] ============ NonEmpty.Graph.edgeSet ============
  569. 1255.95 s [algebraic-graphs] OK: edgeSet (vertex x) == Set.empty
  570. 1255.95 s [algebraic-graphs] OK: edgeSet (edge x y) == Set.singleton (x,y)
  571. 1255.95 s [algebraic-graphs] OK: edgeSet . edges1 == Set.fromList . toList
  572. 1255.95 s [algebraic-graphs]
  573. 1255.96 s [algebraic-graphs] ============ NonEmpty.Graph.path1 ============
  574. 1255.96 s [algebraic-graphs] OK: path1 [x] == vertex x
  575. 1255.96 s [algebraic-graphs] OK: path1 [x,y] == edge x y
  576. 1255.96 s [algebraic-graphs] OK: path1 . reverse == transpose . path1
  577. 1255.96 s [algebraic-graphs]
  578. 1255.96 s [algebraic-graphs] ============ NonEmpty.Graph.circuit1 ============
  579. 1255.96 s [algebraic-graphs] OK: circuit1 [x] == edge x x
  580. 1255.96 s [algebraic-graphs] OK: circuit1 [x,y] == edges1 [(x,y), (y,x)]
  581. 1255.96 s [algebraic-graphs] OK: circuit1 . reverse == transpose . circuit1
  582. 1255.96 s [algebraic-graphs]
  583. 1255.96 s [algebraic-graphs] ============ NonEmpty.Graph.clique1 ============
  584. 1255.96 s [algebraic-graphs] OK: clique1 [x] == vertex x
  585. 1255.96 s [algebraic-graphs] OK: clique1 [x,y] == edge x y
  586. 1255.96 s [algebraic-graphs] OK: clique1 [x,y,z] == edges1 [(x,y), (x,z), (y,z)]
  587. 1255.96 s [algebraic-graphs] OK: clique1 (xs <> ys) == connect (clique1 xs) (clique1 ys)
  588. 1255.96 s [algebraic-graphs] OK: clique1 . reverse == transpose . clique1
  589. 1255.96 s [algebraic-graphs]
  590. 1255.96 s [algebraic-graphs] ============ NonEmpty.Graph.biclique1 ============
  591. 1255.96 s [algebraic-graphs] OK: biclique1 [x1,x2] [y1,y2] == edges1 [(x1,y1), (x1,y2), (x2,y1), (x2,y2)]
  592. 1255.96 s [algebraic-graphs] OK: biclique1 xs ys == connect (vertices1 xs) (vertices1 ys)
  593. 1255.96 s [algebraic-graphs]
  594. 1255.96 s [algebraic-graphs] ============ NonEmpty.Graph.star ============
  595. 1255.96 s [algebraic-graphs] OK: star x [] == vertex x
  596. 1255.96 s [algebraic-graphs] OK: star x [y] == edge x y
  597. 1255.96 s [algebraic-graphs] OK: star x [y,z] == edges1 [(x,y), (x,z)]
  598. 1255.96 s [algebraic-graphs]
  599. 1255.96 s [algebraic-graphs] ============ NonEmpty.Graph.stars1 ============
  600. 1255.96 s [algebraic-graphs] OK: stars1 [(x, [] )] == vertex x
  601. 1255.96 s [algebraic-graphs] OK: stars1 [(x, [y])] == edge x y
  602. 1255.96 s [algebraic-graphs] OK: stars1 [(x, ys )] == star x ys
  603. 1255.96 s [algebraic-graphs] OK: stars1 == overlays1 . fmap (uncurry star)
  604. 1255.96 s [algebraic-graphs] OK: overlay (stars1 xs) (stars1 ys) == stars1 (xs <> ys)
  605. 1255.96 s [algebraic-graphs]
  606. 1255.96 s [algebraic-graphs] ============ NonEmpty.Graph.tree ============
  607. 1255.96 s [algebraic-graphs] OK: tree (Node x []) == vertex x
  608. 1255.96 s [algebraic-graphs] OK: tree (Node x [Node y [Node z []]]) == path1 [x,y,z]
  609. 1255.96 s [algebraic-graphs] OK: tree (Node x [Node y [], Node z []]) == star x [y,z]
  610. 1255.96 s [algebraic-graphs] OK: tree (Node 1 [Node 2 [], Node 3 [Node 4 [], Node 5 []]]) == edges1 [(1,2), (1,3), (3,4), (3,5)]
  611. 1255.96 s [algebraic-graphs]
  612. 1255.96 s [algebraic-graphs] ============ NonEmpty.Graph.mesh1 ============
  613. 1255.96 s [algebraic-graphs] OK: mesh1 [x] [y] == vertex (x, y)
  614. 1255.96 s [algebraic-graphs] OK: mesh1 xs ys == box (path1 xs) (path1 ys)
  615. 1255.96 s [algebraic-graphs] OK: mesh1 [1,2,3] ['a', 'b'] == <correct result>
  616. 1255.96 s [algebraic-graphs] OK: size (mesh xs ys) == max 1 (3 * length xs * length ys - length xs - length ys -1)
  617. 1255.96 s [algebraic-graphs]
  618. 1255.96 s [algebraic-graphs] ============ NonEmpty.Graph.torus1 ============
  619. 1255.96 s [algebraic-graphs] OK: torus1 [x] [y] == edge (x,y) (x,y)
  620. 1255.96 s [algebraic-graphs] OK: torus1 xs ys == box (circuit1 xs) (circuit1 ys)
  621. 1255.96 s [algebraic-graphs] OK: torus1 [1,2] ['a', 'b'] == <correct result>
  622. 1255.96 s [algebraic-graphs] OK: size (torus1 xs ys) == max 1 (3 * length xs * length ys)
  623. 1255.96 s [algebraic-graphs]
  624. 1255.96 s [algebraic-graphs] ============ NonEmpty.Graph.removeVertex1 ============
  625. 1255.96 s [algebraic-graphs] OK: removeVertex1 x (vertex x) == Nothing
  626. 1255.96 s [algebraic-graphs] OK: removeVertex1 1 (vertex 2) == Just (vertex 2)
  627. 1255.96 s [algebraic-graphs] OK: removeVertex1 x (edge x x) == Nothing
  628. 1255.96 s [algebraic-graphs] OK: removeVertex1 1 (edge 1 2) == Just (vertex 2)
  629. 1255.96 s [algebraic-graphs] OK: removeVertex1 x >=> removeVertex1 x == removeVertex1 x
  630. 1255.96 s [algebraic-graphs]
  631. 1255.96 s [algebraic-graphs] ============ NonEmpty.Graph.removeEdge ============
  632. 1255.96 s [algebraic-graphs] OK: removeEdge x y (edge x y) == vertices1 [x,y]
  633. 1255.96 s [algebraic-graphs] OK: removeEdge x y . removeEdge x y == removeEdge x y
  634. 1255.96 s [algebraic-graphs] OK: removeEdge 1 1 (1 * 1 * 2 * 2) == 1 * 2 * 2
  635. 1255.96 s [algebraic-graphs] OK: removeEdge 1 2 (1 * 1 * 2 * 2) == 1 * 1 + 2 * 2
  636. 1255.96 s [algebraic-graphs] OK: size (removeEdge x y z) <= 3 * size z
  637. 1255.96 s [algebraic-graphs]
  638. 1255.96 s [algebraic-graphs] ============ NonEmpty.Graph.replaceVertex ============
  639. 1255.96 s [algebraic-graphs] OK: replaceVertex x x == id
  640. 1255.96 s [algebraic-graphs] OK: replaceVertex x y (vertex x) == vertex y
  641. 1255.96 s [algebraic-graphs] OK: replaceVertex x y == mergeVertices (== x) y
  642. 1255.96 s [algebraic-graphs]
  643. 1255.96 s [algebraic-graphs] ============ NonEmpty.Graph.mergeVertices ============
  644. 1255.96 s [algebraic-graphs] OK: mergeVertices (const False) x == id
  645. 1261.47 s [algebraic-graphs] OK: mergeVertices (== x) y == replaceVertex x y
  646. 1261.47 s [algebraic-graphs] OK: mergeVertices even 1 (0 * 2) == 1 * 1
  647. 1261.54 s [algebraic-graphs] OK: mergeVertices odd 1 (3 + 4 * 5) == 4 * 1
  648. 1261.54 s [algebraic-graphs]
  649. 1261.54 s [algebraic-graphs] ============ NonEmpty.Graph.splitVertex1 ============
  650. 1261.54 s [algebraic-graphs] OK: splitVertex1 x [x] == id
  651. 1261.54 s [algebraic-graphs] OK: splitVertex1 x [y] == replaceVertex x y
  652. 1261.54 s [algebraic-graphs] OK: splitVertex1 1 [0,1] $ 1 * (2 + 3) == (0 + 1) * (2 + 3)
  653. 1261.54 s [algebraic-graphs]
  654. 1261.54 s [algebraic-graphs] ============ NonEmpty.Graph.transpose ============
  655. 1261.54 s [algebraic-graphs] OK: transpose (vertex x) == vertex x
  656. 1261.54 s [algebraic-graphs] OK: transpose (edge x y) == edge y x
  657. 1261.54 s [algebraic-graphs] OK: transpose . transpose == id
  658. 1261.54 s [algebraic-graphs] OK: transpose (box x y) == box (transpose x) (transpose y)
  659. 1261.54 s [algebraic-graphs] OK: edgeList . transpose == sort . map swap . edgeList
  660. 1261.54 s [algebraic-graphs]
  661. 1261.54 s [algebraic-graphs] ============ NonEmpty.Graph.induce1 ============
  662. 1261.54 s [algebraic-graphs] OK: induce1 (const True ) x == Just x
  663. 1261.55 s [algebraic-graphs] OK: induce1 (const False) x == Nothing
  664. 1261.55 s [algebraic-graphs] OK: induce1 (/= x) == removeVertex1 x
  665. 1261.55 s [algebraic-graphs] OK: induce1 p >=> induce1 q == induce1 (\x -> p x && q x)
  666. 1261.55 s [algebraic-graphs]
  667. 1261.55 s [algebraic-graphs] ============ NonEmpty.Graph.induceJust1 ============
  668. 1261.55 s [algebraic-graphs] OK: induceJust1 (vertex Nothing) == Nothing
  669. 1261.55 s [algebraic-graphs] OK: induceJust1 (edge (Just x) Nothing) == Just (vertex x)
  670. 1261.55 s [algebraic-graphs] OK: induceJust1 . fmap Just == Just
  671. 1261.55 s [algebraic-graphs] OK: induceJust1 . fmap (\x -> if p x then Just x else Nothing) == induce1 p
  672. 1261.55 s [algebraic-graphs]
  673. 1261.55 s [algebraic-graphs] ============ NonEmpty.Graph.simplify ============
  674. 1261.55 s [algebraic-graphs] OK: simplify == id
  675. 1261.55 s [algebraic-graphs] OK: size (simplify x) <= size x
  676. 1261.55 s [algebraic-graphs] OK: simplify 1 === 1
  677. 1261.55 s [algebraic-graphs] OK: simplify (1 + 1) === 1
  678. 1261.55 s [algebraic-graphs] OK: simplify (1 + 2 + 1) === 1 + 2
  679. 1261.55 s [algebraic-graphs] OK: simplify (1 * 1 * 1) === 1 * 1
  680. 1261.55 s [algebraic-graphs]
  681. 1261.55 s [algebraic-graphs] ============ NonEmpty.Graph.sparsify ============
  682. 1261.55 s [algebraic-graphs] OK: sort . reachable x == sort . rights . reachable (sparsify x) . Right
  683. 1261.55 s [algebraic-graphs] OK: vertexCount (sparsify x) <= vertexCount x + size x + 1
  684. 1261.55 s [algebraic-graphs] OK: edgeCount (sparsify x) <= 3 * size x
  685. 1261.55 s [algebraic-graphs] OK: size (sparsify x) <= 3 * size x
  686. 1261.55 s [algebraic-graphs]
  687. 1261.55 s [algebraic-graphs] ============ NonEmpty.Graph.sparsifyKL ============
  688. 1261.55 s [algebraic-graphs] OK: sort . reachable x == sort . filter (<= n) . reachable (sparsifyKL n x)
  689. 1261.55 s [algebraic-graphs] OK: length (vertices $ sparsifyKL n x) <= vertexCount x + size x + 1
  690. 1261.55 s [algebraic-graphs] OK: length (edges $ sparsifyKL n x) <= 3 * size x
  691. 1261.55 s [algebraic-graphs]
  692. 1261.55 s [algebraic-graphs] ============ NonEmpty.Graph.box ============
  693. 1261.55 s [algebraic-graphs] OK: box (path1 [0,1]) (path1 ['a','b']) == <correct result>
  694. 1261.55 s [algebraic-graphs] OK: box x y ~~ box y x
  695. 1261.55 s [algebraic-graphs] OK: box x (overlay y z) == overlay (box x y) (box x z)
  696. 1261.55 s [algebraic-graphs] OK: box x (vertex ()) ~~ x
  697. 1261.55 s [algebraic-graphs] OK: box x (box y z) ~~ box (box x y) z
  698. 1261.55 s [algebraic-graphs] OK: transpose (box x y) == box (transpose x) (transpose y)
  699. 1261.55 s [algebraic-graphs] OK: vertexCount (box x y) == vertexCount x * vertexCount y
  700. 1261.55 s [algebraic-graphs] OK: edgeCount (box x y) <= vertexCount x * edgeCount y + edgeCount x * vertexCount y
  701. 1261.55 s [algebraic-graphs]
  702. 1261.55 s [algebraic-graphs] ============ Relation ============
  703. 1261.55 s [algebraic-graphs] OK: Axioms of graphs
  704. 1261.55 s [algebraic-graphs]
  705. 1261.55 s [algebraic-graphs] ============ Relation.consistent ============
  706. 1261.55 s [algebraic-graphs] OK: Consistency of the Arbitrary instance
  707. 1261.55 s [algebraic-graphs]
  708. 1261.55 s [algebraic-graphs] OK: consistent empty == True
  709. 1261.55 s [algebraic-graphs] OK: consistent (vertex x) == True
  710. 1261.55 s [algebraic-graphs] OK: consistent (overlay x y) == True
  711. 1261.55 s [algebraic-graphs] OK: consistent (connect x y) == True
  712. 1261.55 s [algebraic-graphs] OK: consistent (edge x y) == True
  713. 1261.55 s [algebraic-graphs] OK: consistent (edges xs) == True
  714. 1261.55 s [algebraic-graphs] OK: consistent (stars xs) == True
  715. 1261.55 s [algebraic-graphs]
  716. 1261.55 s [algebraic-graphs] ============ Relation.Show ============
  717. 1261.55 s [algebraic-graphs] OK: show (empty ) == "empty"
  718. 1261.55 s [algebraic-graphs] OK: show (1 ) == "vertex 1"
  719. 1261.55 s [algebraic-graphs] OK: show (1 + 2 ) == "vertices [1,2]"
  720. 1261.55 s [algebraic-graphs] OK: show (1 * 2 ) == "edge 1 2"
  721. 1261.55 s [algebraic-graphs] OK: show (1 * 2 * 3) == "edges [(1,2),(1,3),(2,3)]"
  722. 1261.55 s [algebraic-graphs] OK: show (1 * 2 + 3) == "overlay (vertex 3) (edge 1 2)"
  723. 1261.55 s [algebraic-graphs]
  724. 1261.55 s [algebraic-graphs] OK: show (vertex (-1) ) == "vertex (-1)"
  725. 1261.55 s [algebraic-graphs] OK: show (vertex (-1) + vertex (-2) ) == "vertices [-2,-1]"
  726. 1261.55 s [algebraic-graphs] OK: show (vertex (-2) * vertex (-1) ) == "edge (-2) (-1)"
  727. 1261.55 s [algebraic-graphs] OK: show (vertex (-3) * vertex (-2) * vertex (-1)) == "edges [(-3,-2),(-3,-1),(-2,-1)]"
  728. 1261.55 s [algebraic-graphs] OK: show (vertex (-3) * vertex (-2) + vertex (-1)) == "overlay (vertex (-1)) (edge (-3) (-2))"
  729. 1261.55 s [algebraic-graphs]
  730. 1261.55 s [algebraic-graphs] ============ Relation.Ord ============
  731. 1261.55 s [algebraic-graphs] OK: vertex 1 < vertex 2
  732. 1261.55 s [algebraic-graphs] OK: vertex 3 < edge 1 2
  733. 1261.55 s [algebraic-graphs] OK: vertex 1 < edge 1 1
  734. 1261.55 s [algebraic-graphs] OK: edge 1 1 < edge 1 2
  735. 1261.55 s [algebraic-graphs] OK: edge 1 2 < edge 1 1 + edge 2 2
  736. 1261.55 s [algebraic-graphs] OK: edge 1 2 < edge 1 3
  737. 1261.55 s [algebraic-graphs] OK: x <= x + y
  738. 1261.55 s [algebraic-graphs] OK: x + y <= x * y
  739. 1261.55 s [algebraic-graphs]
  740. 1261.55 s [algebraic-graphs] ============ Relation.empty ============
  741. 1261.55 s [algebraic-graphs] OK: isEmpty empty == True
  742. 1261.55 s [algebraic-graphs] OK: hasVertex x empty == False
  743. 1261.55 s [algebraic-graphs] OK: vertexCount empty == 0
  744. 1261.55 s [algebraic-graphs] OK: edgeCount empty == 0
  745. 1261.55 s [algebraic-graphs]
  746. 1261.55 s [algebraic-graphs] ============ Relation.vertex ============
  747. 1261.55 s [algebraic-graphs] OK: isEmpty (vertex x) == False
  748. 1261.55 s [algebraic-graphs] OK: hasVertex x (vertex y) == (x == y)
  749. 1261.55 s [algebraic-graphs] OK: vertexCount (vertex x) == 1
  750. 1261.55 s [algebraic-graphs] OK: edgeCount (vertex x) == 0
  751. 1261.55 s [algebraic-graphs]
  752. 1261.55 s [algebraic-graphs] ============ Relation.edge ============
  753. 1261.55 s [algebraic-graphs] OK: edge x y == connect (vertex x) (vertex y)
  754. 1261.55 s [algebraic-graphs] OK: hasEdge x y (edge x y) == True
  755. 1261.55 s [algebraic-graphs] OK: edgeCount (edge x y) == 1
  756. 1261.55 s [algebraic-graphs] OK: vertexCount (edge 1 1) == 1
  757. 1261.55 s [algebraic-graphs] OK: vertexCount (edge 1 2) == 2
  758. 1261.55 s [algebraic-graphs]
  759. 1261.55 s [algebraic-graphs] ============ Relation.overlay ============
  760. 1261.55 s [algebraic-graphs] OK: isEmpty (overlay x y) == isEmpty x && isEmpty y
  761. 1261.55 s [algebraic-graphs] OK: hasVertex z (overlay x y) == hasVertex z x || hasVertex z y
  762. 1261.55 s [algebraic-graphs] OK: vertexCount (overlay x y) >= vertexCount x
  763. 1261.55 s [algebraic-graphs] OK: vertexCount (overlay x y) <= vertexCount x + vertexCount y
  764. 1261.55 s [algebraic-graphs] OK: edgeCount (overlay x y) >= edgeCount x
  765. 1261.55 s [algebraic-graphs] OK: edgeCount (overlay x y) <= edgeCount x + edgeCount y
  766. 1261.55 s [algebraic-graphs] OK: vertexCount (overlay 1 2) == 2
  767. 1261.55 s [algebraic-graphs] OK: edgeCount (overlay 1 2) == 0
  768. 1261.55 s [algebraic-graphs]
  769. 1261.55 s [algebraic-graphs] ============ Relation.connect ============
  770. 1261.55 s [algebraic-graphs] OK: isEmpty (connect x y) == isEmpty x && isEmpty y
  771. 1261.55 s [algebraic-graphs] OK: hasVertex z (connect x y) == hasVertex z x || hasVertex z y
  772. 1261.55 s [algebraic-graphs] OK: vertexCount (connect x y) >= vertexCount x
  773. 1261.55 s [algebraic-graphs] OK: vertexCount (connect x y) <= vertexCount x + vertexCount y
  774. 1261.55 s [algebraic-graphs] OK: edgeCount (connect x y) >= edgeCount x
  775. 1261.55 s [algebraic-graphs] OK: edgeCount (connect x y) >= edgeCount y
  776. 1261.55 s [algebraic-graphs] OK: edgeCount (connect x y) >= vertexCount x * vertexCount y
  777. 1261.55 s [algebraic-graphs] OK: edgeCount (connect x y) <= vertexCount x * vertexCount y + edgeCount x + edgeCount y
  778. 1261.55 s [algebraic-graphs] OK: vertexCount (connect 1 2) == 2
  779. 1261.55 s [algebraic-graphs] OK: edgeCount (connect 1 2) == 1
  780. 1261.55 s [algebraic-graphs]
  781. 1261.55 s [algebraic-graphs] ============ Relation.vertices ============
  782. 1261.55 s [algebraic-graphs] OK: vertices [] == empty
  783. 1261.55 s [algebraic-graphs] OK: vertices [x] == vertex x
  784. 1261.55 s [algebraic-graphs] OK: vertices == overlays . map vertex
  785. 1261.55 s [algebraic-graphs] OK: hasVertex x . vertices == elem x
  786. 1261.55 s [algebraic-graphs] OK: vertexCount . vertices == length . nub
  787. 1261.55 s [algebraic-graphs] OK: vertexSet . vertices == Set.fromList
  788. 1261.55 s [algebraic-graphs]
  789. 1261.55 s [algebraic-graphs] ============ Relation.edges ============
  790. 1261.55 s [algebraic-graphs] OK: edges [] == empty
  791. 1261.55 s [algebraic-graphs] OK: edges [(x,y)] == edge x y
  792. 1261.55 s [algebraic-graphs] OK: edges == overlays . map (uncurry edge)
  793. 1261.55 s [algebraic-graphs] OK: edgeCount . edges == length . nub
  794. 1261.55 s [algebraic-graphs]
  795. 1261.55 s [algebraic-graphs] ============ Relation.overlays ============
  796. 1261.55 s [algebraic-graphs] OK: overlays [] == empty
  797. 1261.55 s [algebraic-graphs] OK: overlays [x] == x
  798. 1261.55 s [algebraic-graphs] OK: overlays [x,y] == overlay x y
  799. 1261.55 s [algebraic-graphs] OK: overlays == foldr overlay empty
  800. 1261.55 s [algebraic-graphs] OK: isEmpty . overlays == all isEmpty
  801. 1261.55 s [algebraic-graphs]
  802. 1261.55 s [algebraic-graphs] ============ Relation.connects ============
  803. 1261.55 s [algebraic-graphs] OK: connects [] == empty
  804. 1261.55 s [algebraic-graphs] OK: connects [x] == x
  805. 1261.55 s [algebraic-graphs] OK: connects [x,y] == connect x y
  806. 1261.55 s [algebraic-graphs] OK: connects == foldr connect empty
  807. 1261.55 s [algebraic-graphs] OK: isEmpty . connects == all isEmpty
  808. 1261.55 s [algebraic-graphs]
  809. 1261.55 s [algebraic-graphs] ============ Relation.isSubgraphOf ============
  810. 1261.55 s [algebraic-graphs] OK: isSubgraphOf empty x == True
  811. 1261.55 s [algebraic-graphs] OK: isSubgraphOf (vertex x) empty == False
  812. 1261.55 s [algebraic-graphs] OK: isSubgraphOf x (overlay x y) == True
  813. 1261.55 s [algebraic-graphs] OK: isSubgraphOf (overlay x y) (connect x y) == True
  814. 1261.55 s [algebraic-graphs] OK: isSubgraphOf (path xs) (circuit xs) == True
  815. 1261.55 s [algebraic-graphs] OK: isSubgraphOf x y ==> x <= y
  816. 1261.55 s [algebraic-graphs]
  817. 1261.55 s [algebraic-graphs] ============ Relation.toGraph et al. ============
  818. 1261.55 s [algebraic-graphs] OK: toGraph == foldg Empty Vertex Overlay Connect
  819. 1261.55 s [algebraic-graphs] OK: foldg == Algebra.Graph.foldg . toGraph
  820. 1261.55 s [algebraic-graphs] OK: isEmpty == foldg True (const False) (&&) (&&)
  821. 1261.55 s [algebraic-graphs] OK: size == foldg 1 (const 1) (+) (+)
  822. 1261.55 s [algebraic-graphs] OK: hasVertex x == foldg False (==x) (||) (||)
  823. 1261.55 s [algebraic-graphs] OK: hasEdge x y == Algebra.Graph.hasEdge x y . toGraph
  824. 1261.55 s [algebraic-graphs] OK: vertexCount == Set.size . vertexSet
  825. 1261.55 s [algebraic-graphs] OK: edgeCount == Set.size . edgeSet
  826. 1261.55 s [algebraic-graphs] OK: vertexList == Set.toAscList . vertexSet
  827. 1261.55 s [algebraic-graphs] OK: edgeList == Set.toAscList . edgeSet
  828. 1261.55 s [algebraic-graphs] OK: vertexSet == foldg Set.empty Set.singleton Set.union Set.union
  829. 1261.55 s [algebraic-graphs] OK: vertexIntSet == foldg IntSet.empty IntSet.singleton IntSet.union IntSet.union
  830. 1261.55 s [algebraic-graphs] OK: edgeSet == Algebra.Graph.AdjacencyMap.edgeSet . foldg empty vertex overlay connect
  831. 1261.55 s [algebraic-graphs] OK: preSet x == Algebra.Graph.AdjacencyMap.preSet x . toAdjacencyMap
  832. 1261.55 s [algebraic-graphs] OK: preIntSet x == Algebra.Graph.AdjacencyIntMap.preIntSet x . toAdjacencyIntMap
  833. 1261.55 s [algebraic-graphs] OK: postSet x == Algebra.Graph.AdjacencyMap.postSet x . toAdjacencyMap
  834. 1261.55 s [algebraic-graphs] OK: postIntSet x == Algebra.Graph.AdjacencyIntMap.postIntSet x . toAdjacencyIntMap
  835. 1264.37 s [algebraic-graphs] OK: adjacencyList == Algebra.Graph.AdjacencyMap.adjacencyList . toAdjacencyMap
  836. 1264.37 s [algebraic-graphs] OK: adjacencyMap == Algebra.Graph.AdjacencyMap.adjacencyMap . toAdjacencyMap
  837. 1264.37 s [algebraic-graphs] OK: adjacencyIntMap == Algebra.Graph.AdjacencyIntMap.adjacencyIntMap . toAdjacencyIntMap
  838. 1264.37 s [algebraic-graphs] OK: adjacencyMapTranspose == Algebra.Graph.AdjacencyMap.adjacencyMap . toAdjacencyMapTranspose
  839. 1264.37 s [algebraic-graphs] OK: adjacencyIntMapTranspose == Algebra.Graph.AdjacencyIntMap.adjacencyIntMap . toAdjacencyIntMapTranspose
  840. 1264.37 s [algebraic-graphs] OK: dfsForest == Algebra.Graph.AdjacencyMap.dfsForest . toAdjacencyMap
  841. 1264.37 s [algebraic-graphs] OK: dfsForestFrom == Algebra.Graph.AdjacencyMap.dfsForestFrom . toAdjacencyMap
  842. 1264.38 s [algebraic-graphs] OK: dfs == Algebra.Graph.AdjacencyMap.dfs . toAdjacencyMap
  843. 1264.38 s [algebraic-graphs] OK: reachable == Algebra.Graph.AdjacencyMap.reachable . toAdjacencyMap
  844. 1264.38 s [algebraic-graphs] OK: topSort == Algebra.Graph.AdjacencyMap.topSort . toAdjacencyMap
  845. 1264.38 s [algebraic-graphs] OK: isAcyclic == Algebra.Graph.AdjacencyMap.isAcyclic . toAdjacencyMap
  846. 1264.38 s [algebraic-graphs] OK: isTopSortOf vs == Algebra.Graph.AdjacencyMap.isTopSortOf vs . toAdjacencyMap
  847. 1264.38 s [algebraic-graphs] OK: toAdjacencyMap == foldg empty vertex overlay connect
  848. 1264.38 s [algebraic-graphs] OK: toAdjacencyMapTranspose == foldg empty vertex overlay (flip connect)
  849. 1264.38 s [algebraic-graphs] OK: toAdjacencyIntMap == foldg empty vertex overlay connect
  850. 1264.38 s [algebraic-graphs] OK: toAdjacencyIntMapTranspose == foldg empty vertex overlay (flip connect)
  851. 1264.38 s [algebraic-graphs] OK: isDfsForestOf f == Algebra.Graph.AdjacencyMap.isDfsForestOf f . toAdjacencyMap
  852. 1264.38 s [algebraic-graphs] OK: isTopSortOf vs == Algebra.Graph.AdjacencyMap.isTopSortOf vs . toAdjacencyMap
  853. 1264.38 s [algebraic-graphs]
  854. 1264.38 s [algebraic-graphs] ============ Relation.foldg ============
  855. 1264.38 s [algebraic-graphs] OK: foldg empty vertex overlay connect == id
  856. 1264.38 s [algebraic-graphs] OK: foldg empty vertex overlay (flip connect) == transpose
  857. 1264.38 s [algebraic-graphs] OK: foldg 1 (const 1) (+) (+) == size
  858. 1264.38 s [algebraic-graphs] OK: foldg True (const False) (&&) (&&) == isEmpty
  859. 1264.38 s [algebraic-graphs]
  860. 1264.38 s [algebraic-graphs] ============ Relation.isEmpty ============
  861. 1264.38 s [algebraic-graphs] OK: isEmpty empty == True
  862. 1264.38 s [algebraic-graphs] OK: isEmpty (overlay empty empty) == True
  863. 1264.38 s [algebraic-graphs] OK: isEmpty (vertex x) == False
  864. 1264.38 s [algebraic-graphs] OK: isEmpty (removeVertex x $ vertex x) == True
  865. 1264.38 s [algebraic-graphs] OK: isEmpty (removeEdge x y $ edge x y) == False
  866. 1264.38 s [algebraic-graphs]
  867. 1264.38 s [algebraic-graphs] ============ Relation.hasVertex ============
  868. 1264.38 s [algebraic-graphs] OK: hasVertex x empty == False
  869. 1264.38 s [algebraic-graphs] OK: hasVertex x (vertex y) == (x == y)
  870. 1264.38 s [algebraic-graphs] OK: hasVertex x . removeVertex x == const False
  871. 1264.38 s [algebraic-graphs]
  872. 1264.38 s [algebraic-graphs] ============ Relation.hasEdge ============
  873. 1264.38 s [algebraic-graphs] OK: hasEdge x y empty == False
  874. 1264.38 s [algebraic-graphs] OK: hasEdge x y (vertex z) == False
  875. 1264.38 s [algebraic-graphs] OK: hasEdge x y (edge x y) == True
  876. 1264.38 s [algebraic-graphs] OK: hasEdge x y . removeEdge x y == const False
  877. 1264.38 s [algebraic-graphs] OK: hasEdge x y == elem (x,y) . edgeList
  878. 1264.38 s [algebraic-graphs]
  879. 1264.38 s [algebraic-graphs] ============ Relation.vertexCount ============
  880. 1264.38 s [algebraic-graphs] OK: vertexCount empty == 0
  881. 1264.38 s [algebraic-graphs] OK: vertexCount (vertex x) == 1
  882. 1264.38 s [algebraic-graphs] OK: vertexCount == length . vertexList
  883. 1264.38 s [algebraic-graphs] OK: vertexCount x < vertexCount y ==> x < y
  884. 1264.38 s [algebraic-graphs]
  885. 1264.38 s [algebraic-graphs] ============ Relation.edgeCount ============
  886. 1264.38 s [algebraic-graphs] OK: edgeCount empty == 0
  887. 1264.38 s [algebraic-graphs] OK: edgeCount (vertex x) == 0
  888. 1264.38 s [algebraic-graphs] OK: edgeCount (edge x y) == 1
  889. 1264.38 s [algebraic-graphs] OK: edgeCount == length . edgeList
  890. 1264.38 s [algebraic-graphs]
  891. 1264.38 s [algebraic-graphs] ============ Relation.vertexList ============
  892. 1264.38 s [algebraic-graphs] OK: vertexList empty == []
  893. 1264.38 s [algebraic-graphs] OK: vertexList (vertex x) == [x]
  894. 1264.38 s [algebraic-graphs] OK: vertexList . vertices == nub . sort
  895. 1264.38 s [algebraic-graphs]
  896. 1264.38 s [algebraic-graphs] ============ Relation.vertexSet ============
  897. 1264.38 s [algebraic-graphs] OK: vertexSet empty == Set.empty
  898. 1264.38 s [algebraic-graphs] OK: vertexSet . vertex == Set.singleton
  899. 1264.38 s [algebraic-graphs] OK: vertexSet . vertices == Set.fromList
  900. 1264.38 s [algebraic-graphs]
  901. 1264.38 s [algebraic-graphs] ============ Relation.vertexIntSet ============
  902. 1264.38 s [algebraic-graphs] OK: vertexIntSet empty == IntSet.empty
  903. 1264.38 s [algebraic-graphs] OK: vertexIntSet . vertex == IntSet.singleton
  904. 1264.38 s [algebraic-graphs] OK: vertexIntSet . vertices == IntSet.fromList
  905. 1264.38 s [algebraic-graphs] OK: vertexIntSet . clique == IntSet.fromList
  906. 1264.38 s [algebraic-graphs]
  907. 1264.38 s [algebraic-graphs] ============ Relation.edgeList ============
  908. 1264.38 s [algebraic-graphs] OK: edgeList empty == []
  909. 1264.38 s [algebraic-graphs] OK: edgeList (vertex x) == []
  910. 1264.38 s [algebraic-graphs] OK: edgeList (edge x y) == [(x,y)]
  911. 1264.38 s [algebraic-graphs] OK: edgeList (star 2 [3,1]) == [(2,1), (2,3)]
  912. 1264.38 s [algebraic-graphs] OK: edgeList . edges == nub . sort
  913. 1264.38 s [algebraic-graphs]
  914. 1264.38 s [algebraic-graphs] ============ Relation.edgeSet ============
  915. 1264.38 s [algebraic-graphs] OK: edgeSet empty == Set.empty
  916. 1264.38 s [algebraic-graphs] OK: edgeSet (vertex x) == Set.empty
  917. 1264.38 s [algebraic-graphs] OK: edgeSet (edge x y) == Set.singleton (x,y)
  918. 1264.38 s [algebraic-graphs] OK: edgeSet . edges == Set.fromList
  919. 1264.38 s [algebraic-graphs]
  920. 1264.38 s [algebraic-graphs] ============ Relation.adjacencyList ============
  921. 1264.38 s [algebraic-graphs] OK: adjacencyList empty == []
  922. 1264.38 s [algebraic-graphs] OK: adjacencyList (vertex x) == [(x, [])]
  923. 1264.38 s [algebraic-graphs] OK: adjacencyList (edge 1 2) == [(1, [2]), (2, [])]
  924. 1264.38 s [algebraic-graphs] OK: adjacencyList (star 2 [3,1]) == [(1, []), (2, [1,3]), (3, [])]
  925. 1264.38 s [algebraic-graphs]
  926. 1264.38 s [algebraic-graphs] ============ Relation.preSet ============
  927. 1264.38 s [algebraic-graphs] OK: preSet x empty == Set.empty
  928. 1264.38 s [algebraic-graphs] OK: preSet x (vertex x) == Set.empty
  929. 1264.38 s [algebraic-graphs] OK: preSet 1 (edge 1 2) == Set.empty
  930. 1264.38 s [algebraic-graphs] OK: preSet y (edge x y) == Set.fromList [x]
  931. 1264.38 s [algebraic-graphs]
  932. 1264.38 s [algebraic-graphs] ============ Relation.preIntSet ============
  933. 1264.38 s [algebraic-graphs] OK: preIntSet x empty == IntSet.empty
  934. 1264.38 s [algebraic-graphs] OK: preIntSet x (vertex x) == IntSet.empty
  935. 1264.38 s [algebraic-graphs] OK: preIntSet 1 (edge 1 2) == IntSet.empty
  936. 1264.38 s [algebraic-graphs] OK: preIntSet y (edge x y) == IntSet.fromList [x]
  937. 1264.38 s [algebraic-graphs]
  938. 1264.38 s [algebraic-graphs] ============ Relation.postSet ============
  939. 1264.38 s [algebraic-graphs] OK: postSet x empty == Set.empty
  940. 1264.38 s [algebraic-graphs] OK: postSet x (vertex x) == Set.empty
  941. 1264.38 s [algebraic-graphs] OK: postSet x (edge x y) == Set.fromList [y]
  942. 1264.38 s [algebraic-graphs] OK: postSet 2 (edge 1 2) == Set.empty
  943. 1264.38 s [algebraic-graphs]
  944. 1264.38 s [algebraic-graphs] ============ Relation.postIntSet ============
  945. 1264.38 s [algebraic-graphs] OK: postIntSet x empty == IntSet.empty
  946. 1264.38 s [algebraic-graphs] OK: postIntSet x (vertex x) == IntSet.empty
  947. 1264.38 s [algebraic-graphs] OK: postIntSet 2 (edge 1 2) == IntSet.empty
  948. 1264.38 s [algebraic-graphs] OK: postIntSet x (edge x y) == IntSet.fromList [y]
  949. 1264.38 s [algebraic-graphs]
  950. 1264.38 s [algebraic-graphs] ============ Relation.path ============
  951. 1264.38 s [algebraic-graphs] OK: path [] == empty
  952. 1264.38 s [algebraic-graphs] OK: path [x] == vertex x
  953. 1264.38 s [algebraic-graphs] OK: path [x,y] == edge x y
  954. 1264.38 s [algebraic-graphs]
  955. 1264.38 s [algebraic-graphs] ============ Relation.circuit ============
  956. 1264.38 s [algebraic-graphs] OK: circuit [] == empty
  957. 1264.38 s [algebraic-graphs] OK: circuit [x] == edge x x
  958. 1264.38 s [algebraic-graphs] OK: circuit [x,y] == edges [(x,y), (y,x)]
  959. 1264.38 s [algebraic-graphs]
  960. 1264.38 s [algebraic-graphs] ============ Relation.clique ============
  961. 1264.38 s [algebraic-graphs] OK: clique [] == empty
  962. 1264.38 s [algebraic-graphs] OK: clique [x] == vertex x
  963. 1264.38 s [algebraic-graphs] OK: clique [x,y] == edge x y
  964. 1264.38 s [algebraic-graphs] OK: clique [x,y,z] == edges [(x,y), (x,z), (y,z)]
  965. 1264.38 s [algebraic-graphs] OK: clique (xs ++ ys) == connect (clique xs) (clique ys)
  966. 1264.38 s [algebraic-graphs]
  967. 1264.38 s [algebraic-graphs] ============ Relation.biclique ============
  968. 1264.38 s [algebraic-graphs] OK: biclique [] [] == empty
  969. 1264.38 s [algebraic-graphs] OK: biclique [x] [] == vertex x
  970. 1264.38 s [algebraic-graphs] OK: biclique [] [y] == vertex y
  971. 1264.38 s [algebraic-graphs] OK: biclique [x1,x2] [y1,y2] == edges [(x1,y1), (x1,y2), (x2,y1), (x2,y2)]
  972. 1264.38 s [algebraic-graphs] OK: biclique xs ys == connect (vertices xs) (vertices ys)
  973. 1264.38 s [algebraic-graphs]
  974. 1264.38 s [algebraic-graphs] ============ Relation.star ============
  975. 1264.38 s [algebraic-graphs] OK: star x [] == vertex x
  976. 1264.38 s [algebraic-graphs] OK: star x [y] == edge x y
  977. 1264.38 s [algebraic-graphs] OK: star x [y,z] == edges [(x,y), (x,z)]
  978. 1264.38 s [algebraic-graphs] OK: star x ys == connect (vertex x) (vertices ys)
  979. 1264.38 s [algebraic-graphs]
  980. 1264.38 s [algebraic-graphs] ============ Relation.stars ============
  981. 1264.38 s [algebraic-graphs] OK: stars [] == empty
  982. 1264.38 s [algebraic-graphs] OK: stars [(x, [])] == vertex x
  983. 1264.38 s [algebraic-graphs] OK: stars [(x, [y])] == edge x y
  984. 1264.38 s [algebraic-graphs] OK: stars [(x, ys)] == star x ys
  985. 1264.38 s [algebraic-graphs] OK: stars == overlays . map (uncurry star)
  986. 1264.38 s [algebraic-graphs] OK: stars . adjacencyList == id
  987. 1264.38 s [algebraic-graphs] OK: overlay (stars xs) (stars ys) == stars (xs ++ ys)
  988. 1264.38 s [algebraic-graphs]
  989. 1264.38 s [algebraic-graphs] ============ Relation.tree ============
  990. 1264.38 s [algebraic-graphs] OK: tree (Node x []) == vertex x
  991. 1264.38 s [algebraic-graphs] OK: tree (Node x [Node y [Node z []]]) == path [x,y,z]
  992. 1264.38 s [algebraic-graphs] OK: tree (Node x [Node y [], Node z []]) == star x [y,z]
  993. 1264.38 s [algebraic-graphs] OK: tree (Node 1 [Node 2 [], Node 3 [Node 4 [], Node 5 []]]) == edges [(1,2), (1,3), (3,4), (3,5)]
  994. 1264.38 s [algebraic-graphs]
  995. 1264.38 s [algebraic-graphs] ============ Relation.forest ============
  996. 1264.38 s [algebraic-graphs] OK: forest [] == empty
  997. 1264.38 s [algebraic-graphs] OK: forest [x] == tree x
  998. 1264.38 s [algebraic-graphs] OK: forest [Node 1 [Node 2 [], Node 3 []], Node 4 [Node 5 []]] == edges [(1,2), (1,3), (4,5)]
  999. 1264.38 s [algebraic-graphs] OK: forest == overlays . map tree
  1000. 1264.38 s [algebraic-graphs]
  1001. 1264.38 s [algebraic-graphs] ============ Relation.removeVertex ============
  1002. 1264.38 s [algebraic-graphs] OK: removeVertex x (vertex x) == empty
  1003. 1264.38 s [algebraic-graphs] OK: removeVertex 1 (vertex 2) == vertex 2
  1004. 1264.38 s [algebraic-graphs] OK: removeVertex x (edge x x) == empty
  1005. 1264.38 s [algebraic-graphs] OK: removeVertex 1 (edge 1 2) == vertex 2
  1006. 1264.38 s [algebraic-graphs] OK: removeVertex x . removeVertex x == removeVertex x
  1007. 1264.38 s [algebraic-graphs]
  1008. 1264.38 s [algebraic-graphs] ============ Relation.removeEdge ============
  1009. 1264.38 s [algebraic-graphs] OK: removeEdge x y (edge x y) == vertices [x,y]
  1010. 1264.38 s [algebraic-graphs] OK: removeEdge x y . removeEdge x y == removeEdge x y
  1011. 1264.38 s [algebraic-graphs] OK: removeEdge x y . removeVertex x == removeVertex x
  1012. 1264.38 s [algebraic-graphs] OK: removeEdge 1 1 (1 * 1 * 2 * 2) == 1 * 2 * 2
  1013. 1264.38 s [algebraic-graphs] OK: removeEdge 1 2 (1 * 1 * 2 * 2) == 1 * 1 + 2 * 2
  1014. 1264.38 s [algebraic-graphs]
  1015. 1264.38 s [algebraic-graphs] ============ Relation.replaceVertex ============
  1016. 1264.38 s [algebraic-graphs] OK: replaceVertex x x == id
  1017. 1264.38 s [algebraic-graphs] OK: replaceVertex x y (vertex x) == vertex y
  1018. 1264.38 s [algebraic-graphs] OK: replaceVertex x y == mergeVertices (== x) y
  1019. 1264.38 s [algebraic-graphs]
  1020. 1264.38 s [algebraic-graphs] ============ Relation.mergeVertices ============
  1021. 1264.38 s [algebraic-graphs] OK: mergeVertices (const False) x == id
  1022. 1282.05 s [algebraic-graphs] OK: mergeVertices (== x) y == replaceVertex x y
  1023. 1282.05 s [algebraic-graphs] OK: mergeVertices even 1 (0 * 2) == 1 * 1
  1024. 1282.08 s [algebraic-graphs] OK: mergeVertices odd 1 (3 + 4 * 5) == 4 * 1
  1025. 1282.08 s [algebraic-graphs]
  1026. 1282.08 s [algebraic-graphs] ============ Relation.transpose ============
  1027. 1282.08 s [algebraic-graphs] OK: transpose empty == empty
  1028. 1282.08 s [algebraic-graphs] OK: transpose (vertex x) == vertex x
  1029. 1282.08 s [algebraic-graphs] OK: transpose (edge x y) == edge y x
  1030. 1282.08 s [algebraic-graphs] OK: transpose . transpose == id
  1031. 1282.08 s [algebraic-graphs] OK: edgeList . transpose == sort . map swap . edgeList
  1032. 1282.08 s [algebraic-graphs]
  1033. 1282.08 s [algebraic-graphs] ============ Relation.gmap ============
  1034. 1282.08 s [algebraic-graphs] OK: gmap f empty == empty
  1035. 1282.08 s [algebraic-graphs] OK: gmap f (vertex x) == vertex (f x)
  1036. 1282.08 s [algebraic-graphs] OK: gmap f (edge x y) == edge (f x) (f y)
  1037. 1282.08 s [algebraic-graphs] OK: gmap id == id
  1038. 1282.08 s [algebraic-graphs] OK: gmap f . gmap g == gmap (f . g)
  1039. 1282.08 s [algebraic-graphs]
  1040. 1282.08 s [algebraic-graphs] ============ Relation.induce ============
  1041. 1282.08 s [algebraic-graphs] OK: induce (const True ) x == x
  1042. 1282.08 s [algebraic-graphs] OK: induce (const False) x == empty
  1043. 1282.08 s [algebraic-graphs] OK: induce (/= x) == removeVertex x
  1044. 1282.08 s [algebraic-graphs] OK: induce p . induce q == induce (\x -> p x && q x)
  1045. 1282.08 s [algebraic-graphs] OK: isSubgraphOf (induce p x) x == True
  1046. 1282.08 s [algebraic-graphs]
  1047. 1282.08 s [algebraic-graphs] ============ Relation.compose ============
  1048. 1282.08 s [algebraic-graphs] OK: compose empty x == empty
  1049. 1282.08 s [algebraic-graphs] OK: compose x empty == empty
  1050. 1282.08 s [algebraic-graphs] OK: compose (vertex x) y == empty
  1051. 1282.08 s [algebraic-graphs] OK: compose x (vertex y) == empty
  1052. 1282.08 s [algebraic-graphs] OK: compose x (compose y z) == compose (compose x y) z
  1053. 1282.08 s [algebraic-graphs] OK: compose x (overlay y z) == overlay (compose x y) (compose x z)
  1054. 1282.08 s [algebraic-graphs] OK: compose (overlay x y) z == overlay (compose x z) (compose y z)
  1055. 1282.08 s [algebraic-graphs] OK: compose (edge x y) (edge y z) == edge x z
  1056. 1282.08 s [algebraic-graphs] OK: compose (path [1..5]) (path [1..5]) == edges [(1,3),(2,4),(3,5)]
  1057. 1282.08 s [algebraic-graphs] OK: compose (circuit [1..5]) (circuit [1..5]) == circuit [1,3,5,2,4]
  1058. 1282.08 s [algebraic-graphs]
  1059. 1282.08 s [algebraic-graphs] ============ Relation.closure ============
  1060. 1282.08 s [algebraic-graphs] OK: closure empty == empty
  1061. 1282.08 s [algebraic-graphs] OK: closure (vertex x) == edge x x
  1062. 1282.08 s [algebraic-graphs] OK: closure (edge x x) == edge x x
  1063. 1282.08 s [algebraic-graphs] OK: closure (edge x y) == edges [(x,x), (x,y), (y,y)]
  1064. 1282.08 s [algebraic-graphs] OK: closure (path $ nub xs) == reflexiveClosure (clique $ nub xs)
  1065. 1282.08 s [algebraic-graphs] OK: closure == reflexiveClosure . transitiveClosure
  1066. 1282.08 s [algebraic-graphs] OK: closure == transitiveClosure . reflexiveClosure
  1067. 1282.08 s [algebraic-graphs] OK: closure . closure == closure
  1068. 1282.08 s [algebraic-graphs] OK: postSet x (closure y) == Set.fromList (reachable y x)
  1069. 1282.08 s [algebraic-graphs]
  1070. 1282.08 s [algebraic-graphs] ============ Relation.reflexiveClosure ============
  1071. 1282.08 s [algebraic-graphs] OK: reflexiveClosure empty == empty
  1072. 1282.08 s [algebraic-graphs] OK: reflexiveClosure (vertex x) == edge x x
  1073. 1282.08 s [algebraic-graphs] OK: reflexiveClosure (edge x x) == edge x x
  1074. 1282.08 s [algebraic-graphs] OK: reflexiveClosure (edge x y) == edges [(x,x), (x,y), (y,y)]
  1075. 1282.08 s [algebraic-graphs] OK: reflexiveClosure . reflexiveClosure == reflexiveClosure
  1076. 1282.08 s [algebraic-graphs]
  1077. 1282.08 s [algebraic-graphs] ============ Relation.symmetricClosure ============
  1078. 1282.08 s [algebraic-graphs] OK: symmetricClosure empty == empty
  1079. 1282.08 s [algebraic-graphs] OK: symmetricClosure (vertex x) == vertex x
  1080. 1282.08 s [algebraic-graphs] OK: symmetricClosure (edge x y) == edges [(x,y), (y,x)]
  1081. 1282.08 s [algebraic-graphs] OK: symmetricClosure x == overlay x (transpose x)
  1082. 1282.08 s [algebraic-graphs] OK: symmetricClosure . symmetricClosure == symmetricClosure
  1083. 1282.08 s [algebraic-graphs]
  1084. 1282.08 s [algebraic-graphs] ============ Relation.transitiveClosure ============
  1085. 1282.08 s [algebraic-graphs] OK: transitiveClosure empty == empty
  1086. 1282.08 s [algebraic-graphs] OK: transitiveClosure (vertex x) == vertex x
  1087. 1282.08 s [algebraic-graphs] OK: transitiveClosure (edge x y) == edge x y
  1088. 1282.08 s [algebraic-graphs] OK: transitiveClosure (path $ nub xs) == clique (nub $ xs)
  1089. 1282.08 s [algebraic-graphs] OK: transitiveClosure . transitiveClosure == transitiveClosure
  1090. 1282.08 s [algebraic-graphs]
  1091. 1282.08 s [algebraic-graphs] ============ Relation.induceJust ============
  1092. 1282.08 s [algebraic-graphs] OK: induceJust (vertex Nothing) == empty
  1093. 1282.08 s [algebraic-graphs] OK: induceJust (edge (Just x) Nothing) == vertex x
  1094. 1282.08 s [algebraic-graphs] OK: induceJust . gmap Just == id
  1095. 1282.08 s [algebraic-graphs] OK: induceJust . gmap (\x -> if p x then Just x else Nothing) == induce p
  1096. 1282.08 s [algebraic-graphs]
  1097. 1282.08 s [algebraic-graphs] ============ ReflexiveRelation ============
  1098. 1282.08 s [algebraic-graphs] OK: Axioms of reflexive graphs
  1099. 1282.08 s [algebraic-graphs]
  1100. 1282.08 s [algebraic-graphs] ============ TransitiveRelation ============
  1101. 1282.08 s [algebraic-graphs] OK: Axioms of transitive graphs
  1102. 1282.08 s [algebraic-graphs] OK: path xs == (clique xs :: TransitiveRelation Int)
  1103. 1282.08 s [algebraic-graphs]
  1104. 1282.08 s [algebraic-graphs] ============ PreorderRelation ============
  1105. 1282.08 s [algebraic-graphs] OK: Axioms of preorder graphs
  1106. 1282.08 s [algebraic-graphs] OK: path xs == (clique xs :: PreorderRelation Int)
  1107. 1282.08 s [algebraic-graphs]
  1108. 1282.08 s [algebraic-graphs] ============ Symmetric.Relation ============
  1109. 1282.08 s [algebraic-graphs] OK: Axioms of undirected graphs
  1110. 1282.08 s [algebraic-graphs]
  1111. 1282.08 s [algebraic-graphs] ============ Symmetric.Relation.consistent ============
  1112. 1282.08 s [algebraic-graphs] OK: Consistency of the Arbitrary instance
  1113. 1282.08 s [algebraic-graphs]
  1114. 1282.08 s [algebraic-graphs] OK: consistent empty == True
  1115. 1282.08 s [algebraic-graphs] OK: consistent (vertex x) == True
  1116. 1282.08 s [algebraic-graphs] OK: consistent (overlay x y) == True
  1117. 1282.08 s [algebraic-graphs] OK: consistent (connect x y) == True
  1118. 1282.08 s [algebraic-graphs] OK: consistent (edge x y) == True
  1119. 1282.08 s [algebraic-graphs] OK: consistent (edges xs) == True
  1120. 1282.08 s [algebraic-graphs] OK: consistent (stars xs) == True
  1121. 1282.08 s [algebraic-graphs]
  1122. 1282.08 s [algebraic-graphs] ============ Symmetric.Relation.Show ============
  1123. 1282.08 s [algebraic-graphs] OK: show (empty ) == "empty"
  1124. 1282.08 s [algebraic-graphs] OK: show (1 ) == "vertex 1"
  1125. 1282.08 s [algebraic-graphs] OK: show (1 + 2 ) == "vertices [1,2]"
  1126. 1282.08 s [algebraic-graphs] OK: show (1 * 2 ) == "edge 1 2"
  1127. 1282.08 s [algebraic-graphs] OK: show (1 * 2 * 3) == "edges [(1,2),(1,3),(2,3)]"
  1128. 1282.08 s [algebraic-graphs] OK: show (1 * 2 + 3) == "overlay (vertex 3) (edge 1 2)"
  1129. 1282.08 s [algebraic-graphs]
  1130. 1282.08 s [algebraic-graphs] OK: show (vertex (-1) ) == "vertex (-1)"
  1131. 1282.08 s [algebraic-graphs] OK: show (vertex (-1) + vertex (-2) ) == "vertices [-2,-1]"
  1132. 1282.08 s [algebraic-graphs] OK: show (vertex (-2) * vertex (-1) ) == "edge (-2) (-1)"
  1133. 1282.08 s [algebraic-graphs] OK: show (vertex (-3) * vertex (-2) * vertex (-1)) == "edges [(-3,-2),(-3,-1),(-2,-1)]"
  1134. 1282.08 s [algebraic-graphs] OK: show (vertex (-3) * vertex (-2) + vertex (-1)) == "overlay (vertex (-1)) (edge (-3) (-2))"
  1135. 1282.08 s [algebraic-graphs]
  1136. 1282.08 s [algebraic-graphs] OK: show (2 * 1 ) == "edge 1 2"
  1137. 1282.08 s [algebraic-graphs] OK: show (1 * 2 * 1) == "edges [(1,1),(1,2)]"
  1138. 1282.08 s [algebraic-graphs] OK: show (3 * 2 * 1) == "edges [(1,2),(1,3),(2,3)]"
  1139. 1282.08 s [algebraic-graphs]
  1140. 1282.08 s [algebraic-graphs] ============ Symmetric.Relation.toSymmetric ============
  1141. 1282.08 s [algebraic-graphs] OK: toSymmetric (edge 1 2) == edge 1 2
  1142. 1282.08 s [algebraic-graphs] OK: toSymmetric . fromSymmetric == id
  1143. 1282.08 s [algebraic-graphs] OK: fromSymmetric . toSymmetric == symmetricClosure
  1144. 1282.08 s [algebraic-graphs] OK: vertexCount . toSymmetric == vertexCount
  1145. 1282.08 s [algebraic-graphs] OK: (*2) . edgeCount . toSymmetric >= edgeCount
  1146. 1282.08 s [algebraic-graphs]
  1147. 1282.08 s [algebraic-graphs] ============ Symmetric.Relation.fromSymmetric ============
  1148. 1282.08 s [algebraic-graphs] OK: fromSymmetric (edge 1 2) == edges [(1,2), (2,1)]
  1149. 1282.08 s [algebraic-graphs] OK: vertexCount . fromSymmetric == vertexCount
  1150. 1282.08 s [algebraic-graphs] OK: edgeCount . fromSymmetric <= (*2) . edgeCount
  1151. 1282.08 s [algebraic-graphs]
  1152. 1282.08 s [algebraic-graphs] ============ Symmetric.Relation.Ord ============
  1153. 1282.08 s [algebraic-graphs] OK: vertex 1 < vertex 2
  1154. 1282.08 s [algebraic-graphs] OK: vertex 3 < edge 1 2
  1155. 1282.08 s [algebraic-graphs] OK: vertex 1 < edge 1 1
  1156. 1282.08 s [algebraic-graphs] OK: edge 1 1 < edge 1 2
  1157. 1282.08 s [algebraic-graphs] OK: edge 1 2 < edge 1 1 + edge 2 2
  1158. 1282.08 s [algebraic-graphs] OK: edge 2 1 < edge 1 3
  1159. 1282.08 s [algebraic-graphs] OK: edge 1 2 == edge 2 1
  1160. 1282.08 s [algebraic-graphs] OK: x <= x + y
  1161. 1282.08 s [algebraic-graphs] OK: x + y <= x * y
  1162. 1282.08 s [algebraic-graphs]
  1163. 1282.08 s [algebraic-graphs] ============ Symmetric.Relation.empty ============
  1164. 1282.08 s [algebraic-graphs] OK: isEmpty empty == True
  1165. 1282.08 s [algebraic-graphs] OK: hasVertex x empty == False
  1166. 1282.08 s [algebraic-graphs] OK: vertexCount empty == 0
  1167. 1282.08 s [algebraic-graphs] OK: edgeCount empty == 0
  1168. 1282.08 s [algebraic-graphs]
  1169. 1282.08 s [algebraic-graphs] ============ Symmetric.Relation.vertex ============
  1170. 1282.08 s [algebraic-graphs] OK: isEmpty (vertex x) == False
  1171. 1282.08 s [algebraic-graphs] OK: hasVertex x (vertex y) == (x == y)
  1172. 1282.08 s [algebraic-graphs] OK: vertexCount (vertex x) == 1
  1173. 1282.08 s [algebraic-graphs] OK: edgeCount (vertex x) == 0
  1174. 1282.08 s [algebraic-graphs]
  1175. 1282.08 s [algebraic-graphs] ============ Symmetric.Relation.edge ============
  1176. 1282.08 s [algebraic-graphs] OK: edge x y == connect (vertex x) (vertex y)
  1177. 1282.08 s [algebraic-graphs] OK: edge x y == edge y x
  1178. 1282.09 s [algebraic-graphs] OK: edge x y == edges [(x,y), (y,x)]
  1179. 1282.09 s [algebraic-graphs] OK: hasEdge x y (edge x y) == True
  1180. 1282.09 s [algebraic-graphs] OK: edgeCount (edge x y) == 1
  1181. 1282.09 s [algebraic-graphs] OK: vertexCount (edge 1 1) == 1
  1182. 1282.09 s [algebraic-graphs] OK: vertexCount (edge 1 2) == 2
  1183. 1282.09 s [algebraic-graphs]
  1184. 1282.09 s [algebraic-graphs] ============ Symmetric.Relation.overlay ============
  1185. 1282.09 s [algebraic-graphs] OK: isEmpty (overlay x y) == isEmpty x && isEmpty y
  1186. 1282.09 s [algebraic-graphs] OK: hasVertex z (overlay x y) == hasVertex z x || hasVertex z y
  1187. 1282.09 s [algebraic-graphs] OK: vertexCount (overlay x y) >= vertexCount x
  1188. 1282.09 s [algebraic-graphs] OK: vertexCount (overlay x y) <= vertexCount x + vertexCount y
  1189. 1282.09 s [algebraic-graphs] OK: edgeCount (overlay x y) >= edgeCount x
  1190. 1282.09 s [algebraic-graphs] OK: edgeCount (overlay x y) <= edgeCount x + edgeCount y
  1191. 1282.09 s [algebraic-graphs] OK: vertexCount (overlay 1 2) == 2
  1192. 1282.09 s [algebraic-graphs] OK: edgeCount (overlay 1 2) == 0
  1193. 1282.09 s [algebraic-graphs]
  1194. 1282.09 s [algebraic-graphs] ============ Symmetric.Relation.connect ============
  1195. 1282.09 s [algebraic-graphs] OK: connect x y == connect y x
  1196. 1282.09 s [algebraic-graphs] OK: isEmpty (connect x y) == isEmpty x && isEmpty y
  1197. 1282.09 s [algebraic-graphs] OK: hasVertex z (connect x y) == hasVertex z x || hasVertex z y
  1198. 1282.09 s [algebraic-graphs] OK: vertexCount (connect x y) >= vertexCount x
  1199. 1282.09 s [algebraic-graphs] OK: vertexCount (connect x y) <= vertexCount x + vertexCount y
  1200. 1282.09 s [algebraic-graphs] OK: edgeCount (connect x y) >= edgeCount x
  1201. 1282.09 s [algebraic-graphs] OK: edgeCount (connect x y) >= edgeCount y
  1202. 1282.09 s [algebraic-graphs] OK: edgeCount (connect x y) >= vertexCount x * vertexCount y `div` 2
  1203. 1282.09 s [algebraic-graphs] OK: edgeCount (connect x y) <= vertexCount x * vertexCount y + edgeCount x + edgeCount y
  1204. 1282.09 s [algebraic-graphs] OK: vertexCount (connect 1 2) == 2
  1205. 1282.09 s [algebraic-graphs] OK: edgeCount (connect 1 2) == 1
  1206. 1282.09 s [algebraic-graphs]
  1207. 1282.09 s [algebraic-graphs] ============ Symmetric.Relation.vertices ============
  1208. 1282.09 s [algebraic-graphs] OK: vertices [] == empty
  1209. 1282.09 s [algebraic-graphs] OK: vertices [x] == vertex x
  1210. 1282.09 s [algebraic-graphs] OK: vertices == overlays . map vertex
  1211. 1282.09 s [algebraic-graphs] OK: hasVertex x . vertices == elem x
  1212. 1282.09 s [algebraic-graphs] OK: vertexCount . vertices == length . nub
  1213. 1282.09 s [algebraic-graphs] OK: vertexSet . vertices == Set.fromList
  1214. 1282.09 s [algebraic-graphs]
  1215. 1282.09 s [algebraic-graphs] ============ Symmetric.Relation.edges ============
  1216. 1282.09 s [algebraic-graphs] OK: edges [] == empty
  1217. 1282.09 s [algebraic-graphs] OK: edges [(x,y)] == edge x y
  1218. 1282.09 s [algebraic-graphs] OK: edges [(x,y), (y,x)] == edge x y
  1219. 1282.09 s [algebraic-graphs]
  1220. 1282.09 s [algebraic-graphs] ============ Symmetric.Relation.overlays ============
  1221. 1282.09 s [algebraic-graphs] OK: overlays [] == empty
  1222. 1291.76 s [algebraic-graphs] OK: overlays [x] == x
  1223. 1291.81 s [algebraic-graphs] OK: overlays [x,y] == overlay x y
  1224. 1291.81 s [algebraic-graphs] OK: overlays == foldr overlay empty
  1225. 1291.81 s [algebraic-graphs] OK: isEmpty . overlays == all isEmpty
  1226. 1291.81 s [algebraic-graphs]
  1227. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.connects ============
  1228. 1291.81 s [algebraic-graphs] OK: connects [] == empty
  1229. 1291.81 s [algebraic-graphs] OK: connects [x] == x
  1230. 1291.81 s [algebraic-graphs] OK: connects [x,y] == connect x y
  1231. 1291.81 s [algebraic-graphs] OK: connects == foldr connect empty
  1232. 1291.81 s [algebraic-graphs] OK: isEmpty . connects == all isEmpty
  1233. 1291.81 s [algebraic-graphs] OK: connects == connects . reverse
  1234. 1291.81 s [algebraic-graphs]
  1235. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.isSubgraphOf ============
  1236. 1291.81 s [algebraic-graphs] OK: isSubgraphOf empty x == True
  1237. 1291.81 s [algebraic-graphs] OK: isSubgraphOf (vertex x) empty == False
  1238. 1291.81 s [algebraic-graphs] OK: isSubgraphOf x (overlay x y) == True
  1239. 1291.81 s [algebraic-graphs] OK: isSubgraphOf (overlay x y) (connect x y) == True
  1240. 1291.81 s [algebraic-graphs] OK: isSubgraphOf (path xs) (circuit xs) == True
  1241. 1291.81 s [algebraic-graphs] OK: isSubgraphOf x y ==> x <= y
  1242. 1291.81 s [algebraic-graphs] OK: isSubgraphOf (edge x y) (edge y x) == True
  1243. 1291.81 s [algebraic-graphs]
  1244. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.toGraph et al. ============
  1245. 1291.81 s [algebraic-graphs] OK: toGraph == foldg Empty Vertex Overlay Connect
  1246. 1291.81 s [algebraic-graphs] OK: foldg == Algebra.Graph.foldg . toGraph
  1247. 1291.81 s [algebraic-graphs] OK: isEmpty == foldg True (const False) (&&) (&&)
  1248. 1291.81 s [algebraic-graphs] OK: size == foldg 1 (const 1) (+) (+)
  1249. 1291.81 s [algebraic-graphs] OK: hasVertex x == foldg False (==x) (||) (||)
  1250. 1291.81 s [algebraic-graphs] OK: hasEdge x y == Algebra.Graph.hasEdge x y . toGraph
  1251. 1291.81 s [algebraic-graphs] OK: vertexCount == Set.size . vertexSet
  1252. 1291.81 s [algebraic-graphs] OK: edgeCount == Set.size . edgeSet
  1253. 1291.81 s [algebraic-graphs] OK: vertexList == Set.toAscList . vertexSet
  1254. 1291.81 s [algebraic-graphs] OK: edgeList == Set.toAscList . edgeSet
  1255. 1291.81 s [algebraic-graphs] OK: vertexSet == foldg Set.empty Set.singleton Set.union Set.union
  1256. 1291.81 s [algebraic-graphs] OK: vertexIntSet == foldg IntSet.empty IntSet.singleton IntSet.union IntSet.union
  1257. 1291.81 s [algebraic-graphs] OK: adjacencyList == Algebra.Graph.AdjacencyMap.adjacencyList . toAdjacencyMap
  1258. 1291.81 s [algebraic-graphs] OK: adjacencyMap == Algebra.Graph.AdjacencyMap.adjacencyMap . toAdjacencyMap
  1259. 1291.81 s [algebraic-graphs] OK: adjacencyIntMap == Algebra.Graph.AdjacencyIntMap.adjacencyIntMap . toAdjacencyIntMap
  1260. 1291.81 s [algebraic-graphs] OK: adjacencyMapTranspose == Algebra.Graph.AdjacencyMap.adjacencyMap . toAdjacencyMapTranspose
  1261. 1291.81 s [algebraic-graphs] OK: adjacencyIntMapTranspose == Algebra.Graph.AdjacencyIntMap.adjacencyIntMap . toAdjacencyIntMapTranspose
  1262. 1291.81 s [algebraic-graphs] OK: dfsForest == Algebra.Graph.AdjacencyMap.dfsForest . toAdjacencyMap
  1263. 1291.81 s [algebraic-graphs] OK: dfsForestFrom == Algebra.Graph.AdjacencyMap.dfsForestFrom . toAdjacencyMap
  1264. 1291.81 s [algebraic-graphs] OK: dfs == Algebra.Graph.AdjacencyMap.dfs . toAdjacencyMap
  1265. 1291.81 s [algebraic-graphs] OK: reachable == Algebra.Graph.AdjacencyMap.reachable . toAdjacencyMap
  1266. 1291.81 s [algebraic-graphs] OK: topSort == Algebra.Graph.AdjacencyMap.topSort . toAdjacencyMap
  1267. 1291.81 s [algebraic-graphs] OK: isAcyclic == Algebra.Graph.AdjacencyMap.isAcyclic . toAdjacencyMap
  1268. 1291.81 s [algebraic-graphs] OK: isTopSortOf vs == Algebra.Graph.AdjacencyMap.isTopSortOf vs . toAdjacencyMap
  1269. 1291.81 s [algebraic-graphs] OK: toAdjacencyMap == foldg empty vertex overlay connect
  1270. 1291.81 s [algebraic-graphs] OK: toAdjacencyMapTranspose == foldg empty vertex overlay (flip connect)
  1271. 1291.81 s [algebraic-graphs] OK: toAdjacencyIntMap == foldg empty vertex overlay connect
  1272. 1291.81 s [algebraic-graphs] OK: toAdjacencyIntMapTranspose == foldg empty vertex overlay (flip connect)
  1273. 1291.81 s [algebraic-graphs] OK: isDfsForestOf f == Algebra.Graph.AdjacencyMap.isDfsForestOf f . toAdjacencyMap
  1274. 1291.81 s [algebraic-graphs] OK: isTopSortOf vs == Algebra.Graph.AdjacencyMap.isTopSortOf vs . toAdjacencyMap
  1275. 1291.81 s [algebraic-graphs]
  1276. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.isEmpty ============
  1277. 1291.81 s [algebraic-graphs] OK: isEmpty empty == True
  1278. 1291.81 s [algebraic-graphs] OK: isEmpty (overlay empty empty) == True
  1279. 1291.81 s [algebraic-graphs] OK: isEmpty (vertex x) == False
  1280. 1291.81 s [algebraic-graphs] OK: isEmpty (removeVertex x $ vertex x) == True
  1281. 1291.81 s [algebraic-graphs] OK: isEmpty (removeEdge x y $ edge x y) == False
  1282. 1291.81 s [algebraic-graphs]
  1283. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.hasVertex ============
  1284. 1291.81 s [algebraic-graphs] OK: hasVertex x empty == False
  1285. 1291.81 s [algebraic-graphs] OK: hasVertex x (vertex y) == (x == y)
  1286. 1291.81 s [algebraic-graphs] OK: hasVertex x . removeVertex x == const False
  1287. 1291.81 s [algebraic-graphs]
  1288. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.hasEdge ============
  1289. 1291.81 s [algebraic-graphs] OK: hasEdge x y empty == False
  1290. 1291.81 s [algebraic-graphs] OK: hasEdge x y (vertex z) == False
  1291. 1291.81 s [algebraic-graphs] OK: hasEdge x y (edge x y) == True
  1292. 1291.81 s [algebraic-graphs] OK: hasEdge x y (edge y x) == True
  1293. 1291.81 s [algebraic-graphs] OK: hasEdge x y . removeEdge x y == const False
  1294. 1291.81 s [algebraic-graphs] OK: hasEdge x y == elem (min x y, max x y) . edgeList
  1295. 1291.81 s [algebraic-graphs]
  1296. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.vertexCount ============
  1297. 1291.81 s [algebraic-graphs] OK: vertexCount empty == 0
  1298. 1291.81 s [algebraic-graphs] OK: vertexCount (vertex x) == 1
  1299. 1291.81 s [algebraic-graphs] OK: vertexCount == length . vertexList
  1300. 1291.81 s [algebraic-graphs] OK: vertexCount x < vertexCount y ==> x < y
  1301. 1291.81 s [algebraic-graphs]
  1302. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.edgeCount ============
  1303. 1291.81 s [algebraic-graphs] OK: edgeCount empty == 0
  1304. 1291.81 s [algebraic-graphs] OK: edgeCount (vertex x) == 0
  1305. 1291.81 s [algebraic-graphs] OK: edgeCount (edge x y) == 1
  1306. 1291.81 s [algebraic-graphs] OK: edgeCount == length . edgeList
  1307. 1291.81 s [algebraic-graphs]
  1308. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.vertexList ============
  1309. 1291.81 s [algebraic-graphs] OK: vertexList empty == []
  1310. 1291.81 s [algebraic-graphs] OK: vertexList (vertex x) == [x]
  1311. 1291.81 s [algebraic-graphs] OK: vertexList . vertices == nub . sort
  1312. 1291.81 s [algebraic-graphs]
  1313. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.vertexSet ============
  1314. 1291.81 s [algebraic-graphs] OK: vertexSet empty == Set.empty
  1315. 1291.81 s [algebraic-graphs] OK: vertexSet . vertex == Set.singleton
  1316. 1291.81 s [algebraic-graphs] OK: vertexSet . vertices == Set.fromList
  1317. 1291.81 s [algebraic-graphs]
  1318. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.vertexIntSet ============
  1319. 1291.81 s [algebraic-graphs] OK: vertexIntSet empty == IntSet.empty
  1320. 1291.81 s [algebraic-graphs] OK: vertexIntSet . vertex == IntSet.singleton
  1321. 1291.81 s [algebraic-graphs] OK: vertexIntSet . vertices == IntSet.fromList
  1322. 1291.81 s [algebraic-graphs] OK: vertexIntSet . clique == IntSet.fromList
  1323. 1291.81 s [algebraic-graphs]
  1324. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.edgeList ============
  1325. 1291.81 s [algebraic-graphs] OK: edgeList empty == []
  1326. 1291.81 s [algebraic-graphs] OK: edgeList (vertex x) == []
  1327. 1291.81 s [algebraic-graphs] OK: edgeList (edge x y) == [(min x y, max y x)]
  1328. 1291.81 s [algebraic-graphs] OK: edgeList (star 2 [3,1]) == [(1,2), (2,3)]
  1329. 1291.81 s [algebraic-graphs]
  1330. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.edgeSet ============
  1331. 1291.81 s [algebraic-graphs] OK: edgeSet empty == Set.empty
  1332. 1291.81 s [algebraic-graphs] OK: edgeSet (vertex x) == Set.empty
  1333. 1291.81 s [algebraic-graphs] OK: edgeSet (edge x y) == Set.singleton (min x y, max x y)
  1334. 1291.81 s [algebraic-graphs]
  1335. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.adjacencyList ============
  1336. 1291.81 s [algebraic-graphs] OK: adjacencyList empty == []
  1337. 1291.81 s [algebraic-graphs] OK: adjacencyList (vertex x) == [(x, [])]
  1338. 1291.81 s [algebraic-graphs] OK: adjacencyList (edge 1 2) == [(1, [2]), (2, [1])]
  1339. 1291.81 s [algebraic-graphs] OK: adjacencyList (star 2 [3,1]) == [(1, [2]), (2, [1,3]), (3, [2])]
  1340. 1291.81 s [algebraic-graphs]
  1341. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.neighbours ============
  1342. 1291.81 s [algebraic-graphs] OK: neighbours x empty == Set.empty
  1343. 1291.81 s [algebraic-graphs] OK: neighbours x (vertex x) == Set.empty
  1344. 1291.81 s [algebraic-graphs] OK: neighbours x (edge x y) == Set.fromList [y]
  1345. 1291.81 s [algebraic-graphs] OK: neighbours y (edge x y) == Set.fromList [x]
  1346. 1291.81 s [algebraic-graphs]
  1347. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.path ============
  1348. 1291.81 s [algebraic-graphs] OK: path [] == empty
  1349. 1291.81 s [algebraic-graphs] OK: path [x] == vertex x
  1350. 1291.81 s [algebraic-graphs] OK: path [x,y] == edge x y
  1351. 1291.81 s [algebraic-graphs] OK: path == path . reverse
  1352. 1291.81 s [algebraic-graphs]
  1353. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.circuit ============
  1354. 1291.81 s [algebraic-graphs] OK: circuit [] == empty
  1355. 1291.81 s [algebraic-graphs] OK: circuit [x] == edge x x
  1356. 1291.81 s [algebraic-graphs] OK: circuit [x,y] == edges [(x,y), (y,x)]
  1357. 1291.81 s [algebraic-graphs] OK: circuit == circuit . reverse
  1358. 1291.81 s [algebraic-graphs]
  1359. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.clique ============
  1360. 1291.81 s [algebraic-graphs] OK: clique [] == empty
  1361. 1291.81 s [algebraic-graphs] OK: clique [x] == vertex x
  1362. 1291.81 s [algebraic-graphs] OK: clique [x,y] == edge x y
  1363. 1291.81 s [algebraic-graphs] OK: clique [x,y,z] == edges [(x,y), (x,z), (y,z)]
  1364. 1291.81 s [algebraic-graphs] OK: clique (xs ++ ys) == connect (clique xs) (clique ys)
  1365. 1291.81 s [algebraic-graphs] OK: clique == clique . reverse
  1366. 1291.81 s [algebraic-graphs]
  1367. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.biclique ============
  1368. 1291.81 s [algebraic-graphs] OK: biclique [] [] == empty
  1369. 1291.81 s [algebraic-graphs] OK: biclique [x] [] == vertex x
  1370. 1291.81 s [algebraic-graphs] OK: biclique [] [y] == vertex y
  1371. 1291.81 s [algebraic-graphs] OK: biclique [x1,x2] [y1,y2] == edges [(x1,y1), (x1,y2), (x2,y1), (x2,y2)]
  1372. 1291.81 s [algebraic-graphs] OK: biclique xs ys == connect (vertices xs) (vertices ys)
  1373. 1291.81 s [algebraic-graphs]
  1374. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.star ============
  1375. 1291.81 s [algebraic-graphs] OK: star x [] == vertex x
  1376. 1291.81 s [algebraic-graphs] OK: star x [y] == edge x y
  1377. 1291.81 s [algebraic-graphs] OK: star x [y,z] == edges [(x,y), (x,z)]
  1378. 1291.81 s [algebraic-graphs] OK: star x ys == connect (vertex x) (vertices ys)
  1379. 1291.81 s [algebraic-graphs]
  1380. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.stars ============
  1381. 1291.81 s [algebraic-graphs] OK: stars [] == empty
  1382. 1291.81 s [algebraic-graphs] OK: stars [(x, [])] == vertex x
  1383. 1291.81 s [algebraic-graphs] OK: stars [(x, [y])] == edge x y
  1384. 1291.81 s [algebraic-graphs] OK: stars [(x, ys)] == star x ys
  1385. 1291.81 s [algebraic-graphs] OK: stars == overlays . map (uncurry star)
  1386. 1291.81 s [algebraic-graphs] OK: stars . adjacencyList == id
  1387. 1291.81 s [algebraic-graphs] OK: overlay (stars xs) (stars ys) == stars (xs ++ ys)
  1388. 1291.81 s [algebraic-graphs]
  1389. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.tree ============
  1390. 1291.81 s [algebraic-graphs] OK: tree (Node x []) == vertex x
  1391. 1291.81 s [algebraic-graphs] OK: tree (Node x [Node y [Node z []]]) == path [x,y,z]
  1392. 1291.81 s [algebraic-graphs] OK: tree (Node x [Node y [], Node z []]) == star x [y,z]
  1393. 1291.81 s [algebraic-graphs] OK: tree (Node 1 [Node 2 [], Node 3 [Node 4 [], Node 5 []]]) == edges [(1,2), (1,3), (3,4), (3,5)]
  1394. 1291.81 s [algebraic-graphs]
  1395. 1291.81 s [algebraic-graphs] ============ Symmetric.Relation.forest ============
  1396. 1291.81 s [algebraic-graphs] OK: forest [] == empty
  1397. 1297.92 s [algebraic-graphs] OK: forest [x] == tree x
  1398. 1297.92 s [algebraic-graphs] OK: forest [Node 1 [Node 2 [], Node 3 []], Node 4 [Node 5 []]] == edges [(1,2), (1,3), (4,5)]
  1399. 1297.97 s [algebraic-graphs] OK: forest == overlays . map tree
  1400. 1297.97 s [algebraic-graphs]
  1401. 1297.97 s [algebraic-graphs] ============ Symmetric.Relation.removeVertex ============
  1402. 1297.97 s [algebraic-graphs] OK: removeVertex x (vertex x) == empty
  1403. 1297.97 s [algebraic-graphs] OK: removeVertex 1 (vertex 2) == vertex 2
  1404. 1297.97 s [algebraic-graphs] OK: removeVertex x (edge x x) == empty
  1405. 1297.97 s [algebraic-graphs] OK: removeVertex 1 (edge 1 2) == vertex 2
  1406. 1297.97 s [algebraic-graphs] OK: removeVertex x . removeVertex x == removeVertex x
  1407. 1297.97 s [algebraic-graphs]
  1408. 1297.97 s [algebraic-graphs] ============ Symmetric.Relation.removeEdge ============
  1409. 1297.97 s [algebraic-graphs] OK: removeEdge x y (edge x y) == vertices [x,y]
  1410. 1297.97 s [algebraic-graphs] OK: removeEdge x y . removeEdge x y == removeEdge x y
  1411. 1297.97 s [algebraic-graphs] OK: removeEdge x y . removeVertex x == removeVertex x
  1412. 1297.97 s [algebraic-graphs] OK: removeEdge 1 1 (1 * 1 * 2 * 2) == 1 * 2 * 2
  1413. 1297.97 s [algebraic-graphs] OK: removeEdge 1 2 (1 * 1 * 2 * 2) == 1 * 1 + 2 * 2
  1414. 1297.97 s [algebraic-graphs] OK: removeEdge x y == removeEdge y x
  1415. 1297.97 s [algebraic-graphs]
  1416. 1297.97 s [algebraic-graphs] ============ Symmetric.Relation.replaceVertex ============
  1417. 1297.97 s [algebraic-graphs] OK: replaceVertex x x == id
  1418. 1297.97 s [algebraic-graphs] OK: replaceVertex x y (vertex x) == vertex y
  1419. 1297.97 s [algebraic-graphs] OK: replaceVertex x y == mergeVertices (== x) y
  1420. 1297.97 s [algebraic-graphs]
  1421. 1297.97 s [algebraic-graphs] ============ Symmetric.Relation.mergeVertices ============
  1422. 1297.97 s [algebraic-graphs] OK: mergeVertices (const False) x == id
  1423. 1297.97 s [algebraic-graphs] OK: mergeVertices (== x) y == replaceVertex x y
  1424. 1297.97 s [algebraic-graphs] OK: mergeVertices even 1 (0 * 2) == 1 * 1
  1425. 1297.97 s [algebraic-graphs] OK: mergeVertices odd 1 (3 + 4 * 5) == 4 * 1
  1426. 1297.97 s [algebraic-graphs]
  1427. 1297.97 s [algebraic-graphs] ============ Symmetric.Relation.gmap ============
  1428. 1297.97 s [algebraic-graphs] OK: gmap f empty == empty
  1429. 1297.97 s [algebraic-graphs] OK: gmap f (vertex x) == vertex (f x)
  1430. 1297.97 s [algebraic-graphs] OK: gmap f (edge x y) == edge (f x) (f y)
  1431. 1297.97 s [algebraic-graphs] OK: gmap id == id
  1432. 1297.97 s [algebraic-graphs] OK: gmap f . gmap g == gmap (f . g)
  1433. 1297.97 s [algebraic-graphs]
  1434. 1297.97 s [algebraic-graphs] ============ Symmetric.Relation.induce ============
  1435. 1297.97 s [algebraic-graphs] OK: induce (const True ) x == x
  1436. 1297.97 s [algebraic-graphs] OK: induce (const False) x == empty
  1437. 1297.97 s [algebraic-graphs] OK: induce (/= x) == removeVertex x
  1438. 1297.97 s [algebraic-graphs] OK: induce p . induce q == induce (\x -> p x && q x)
  1439. 1297.97 s [algebraic-graphs] OK: isSubgraphOf (induce p x) x == True
  1440. 1297.97 s [algebraic-graphs]
  1441. 1297.97 s [algebraic-graphs] ============ Symmetric.Relation.induceJust ============
  1442. 1297.97 s [algebraic-graphs] OK: induceJust (vertex Nothing) == empty
  1443. 1297.97 s [algebraic-graphs] OK: induceJust (edge (Just x) Nothing) == vertex x
  1444. 1297.97 s [algebraic-graphs] OK: induceJust . gmap Just == id
  1445. 1297.97 s [algebraic-graphs] OK: induceJust . gmap (\x -> if p x then Just x else Nothing) == induce p
  1446. 1297.97 s [algebraic-graphs]
  1447. 1297.97 s [algebraic-graphs] ============ Example.Todo (Holiday) ============
  1448. 1297.97 s [algebraic-graphs] OK: A todo list is semantically Maybe [a]
  1449. 1297.97 s [algebraic-graphs] OK: The overlay operator (+) adds non-dependent items to the todo list
  1450. 1297.97 s [algebraic-graphs] OK: The connect operator (*) adds dependency between items
  1451. 1297.97 s [algebraic-graphs] OK: Contradictory constraints make the todo list impossible to schedule
  1452. 1297.97 s [algebraic-graphs] OK: Introduce item priority to schedule the todo list
  1453. 1297.97 s [algebraic-graphs] OK: Custom connect operators pull/repel arguments during scheduling
  1454. 1297.97 s [algebraic-graphs]
  1455. 1297.97 s [algebraic-graphs] ============ Example.Todo (Commandline) ============
  1456. 1297.97 s [algebraic-graphs] OK: The pull connect operator maintains command line semantics
  1457. 1297.97 s [algebraic-graphs] OK: Swapping flags are allowed by the commutative overlay opeartor
  1458. 1297.97 s [algebraic-graphs] OK: The usual connect operator breaks semantics
  1459. 1297.97 s [algebraic-graphs] OK: Transform command lines by adding optimisation flag
  1460. 1297.97 s [algebraic-graphs]
  1461. 1297.97 s [algebraic-graphs] ============ Typed ============
  1462. 1297.97 s [algebraic-graphs]
  1463. 1297.97 s [algebraic-graphs] ============ Typed.fromAdjacencyMap ============
  1464. 1297.97 s [algebraic-graphs] OK: toGraphKL (fromAdjacencyMap (1 * 2 + 3 * 1)) == array (0,2) [(0,[1]), (1,[]), (2,[0])]
  1465. 1297.97 s [algebraic-graphs] OK: toGraphKL (fromAdjacencyMap (1 * 2 + 2 * 1)) == array (0,1) [(0,[1]), (1,[0])]
  1466. 1297.97 s [algebraic-graphs] OK: map (fromVertexKL h) (vertices $ toGraphKL h) == vertexList g
  1467. 1297.97 s [algebraic-graphs] OK: map (\(x, y) -> (fromVertexKL h x, fromVertexKL h y)) (edges $ toGraphKL h) == edgeList g
  1468. 1297.97 s [algebraic-graphs]
  1469. 1297.97 s [algebraic-graphs] ============ Typed.fromAdjacencyIntMap ============
  1470. 1297.97 s [algebraic-graphs] OK: toGraphKL (fromAdjacencyIntMap (1 * 2 + 3 * 1)) == array (0,2) [(0,[1]), (1,[]), (2,[0])]
  1471. 1297.97 s [algebraic-graphs] OK: toGraphKL (fromAdjacencyIntMap (1 * 2 + 2 * 1)) == array (0,1) [(0,[1]), (1,[0])]
  1472. 1297.97 s [algebraic-graphs] OK: map (fromVertexKL h) (vertices $ toGraphKL h) == IntSet.toAscList (vertexIntSet g)
  1473. 1297.97 s [algebraic-graphs] OK: map (\(x, y) -> (fromVertexKL h x, fromVertexKL h y)) (edges $ toGraphKL h) == edgeList g
  1474. 1297.97 s [algebraic-graphs]
  1475. 1297.97 s [algebraic-graphs] ============ Typed.dfsForest ============
  1476. 1297.97 s [algebraic-graphs] OK: forest (dfsForest % edge 1 1) == vertex 1
  1477. 1297.97 s [algebraic-graphs] OK: forest (dfsForest % edge 1 2) == edge 1 2
  1478. 1297.97 s [algebraic-graphs] OK: forest (dfsForest % edge 2 1) == vertices [1, 2]
  1479. 1297.97 s [algebraic-graphs] OK: isSubgraphOf (forest $ dfsForest % x) x == True
  1480. 1297.97 s [algebraic-graphs] OK: dfsForest % forest (dfsForest % x) == dfsForest % x
  1481. 1297.97 s [algebraic-graphs] OK: dfsForest % vertices vs == map (\v -> Node v []) (nub $ sort vs)
  1482. 1297.97 s [algebraic-graphs] OK: dfsForest % (3 * (1 + 4) * (1 + 5)) == <correct result>
  1483. 1297.97 s [algebraic-graphs]
  1484. 1297.97 s [algebraic-graphs] ============ Typed.dfsForestFrom ============
  1485. 1297.97 s [algebraic-graphs] OK: forest $ (dfsForestFrom % edge 1 1) [1] == vertex 1
  1486. 1297.97 s [algebraic-graphs] OK: forest $ (dfsForestFrom % edge 1 2) [0] == empty
  1487. 1297.97 s [algebraic-graphs] OK: forest $ (dfsForestFrom % edge 1 2) [1] == edge 1 2
  1488. 1297.97 s [algebraic-graphs] OK: forest $ (dfsForestFrom % edge 1 2) [2] == vertex 2
  1489. 1297.97 s [algebraic-graphs] OK: forest $ (dfsForestFrom % edge 1 2) [2,1] == vertices [1,2]
  1490. 1297.97 s [algebraic-graphs] OK: isSubgraphOf (forest $ dfsForestFrom % x $ vs) x == True
  1491. 1297.97 s [algebraic-graphs] OK: dfsForestFrom % x $ vertexList x == dfsForest % x
  1492. 1297.97 s [algebraic-graphs] OK: dfsForestFrom % vertices vs $ vs == map (\v -> Node v []) (nub vs)
  1493. 1297.97 s [algebraic-graphs] OK: dfsForestFrom % x $ [] == []
  1494. 1297.97 s [algebraic-graphs] OK: dfsForestFrom % (3 * (1 + 4) * (1 + 5)) $ [1,4] == <correct result>
  1495. 1297.97 s [algebraic-graphs]
  1496. 1297.97 s [algebraic-graphs] ============ Typed.dfs ============
  1497. 1297.97 s [algebraic-graphs] OK: dfs % edge 1 1 $ [1] == [1]
  1498. 1297.97 s [algebraic-graphs] OK: dfs % edge 1 2 $ [0] == []
  1499. 1297.97 s [algebraic-graphs] OK: dfs % edge 1 2 $ [1] == [1,2]
  1500. 1297.97 s [algebraic-graphs] OK: dfs % edge 1 2 $ [2] == [2]
  1501. 1297.97 s [algebraic-graphs] OK: dfs % edge 1 2 $ [1,2] == [1,2]
  1502. 1297.97 s [algebraic-graphs] OK: dfs % edge 1 2 $ [2,1] == [2,1]
  1503. 1297.97 s [algebraic-graphs] OK: dfs % x $ [] == []
  1504. 1297.97 s [algebraic-graphs]
  1505. 1297.97 s [algebraic-graphs] OK: dfs % (3 * (1 + 4) * (1 + 5)) $ [1,4] == [1,5,4]
  1506. 1297.97 s [algebraic-graphs] OK: and [ hasVertex v x | v <- dfs % x $ vs ] == True
  1507. 1297.97 s [algebraic-graphs]
  1508. 1297.97 s [algebraic-graphs] ============ Typed.topSort ============
  1509. 1297.97 s [algebraic-graphs] OK: topSort % (1 * 2 + 3 * 1) == [3,1,2]
  1510. 1297.97 s [algebraic-graphs] OK: topSort % (1 * 2 + 2 * 1) == [1,2]
  1511. 1297.97 s [algebraic-graphs]
  1512. 1297.97 s [algebraic-graphs] ============ Graph.Undirected ============
  1513. 1297.97 s [algebraic-graphs] OK: Axioms of undirected graphs
  1514. 1297.97 s [algebraic-graphs]
  1515. 1297.97 s [algebraic-graphs] ============ Graph.Undirected.Show ============
  1516. 1297.97 s [algebraic-graphs] OK: show (empty ) == "empty"
  1517. 1297.97 s [algebraic-graphs] OK: show (1 ) == "vertex 1"
  1518. 1297.97 s [algebraic-graphs] OK: show (1 + 2 ) == "vertices [1,2]"
  1519. 1297.97 s [algebraic-graphs] OK: show (1 * 2 ) == "edge 1 2"
  1520. 1297.97 s [algebraic-graphs] OK: show (1 * 2 * 3) == "edges [(1,2),(1,3),(2,3)]"
  1521. 1297.97 s [algebraic-graphs] OK: show (1 * 2 + 3) == "overlay (vertex 3) (edge 1 2)"
  1522. 1297.97 s [algebraic-graphs]
  1523. 1297.97 s [algebraic-graphs] OK: show (vertex (-1) ) == "vertex (-1)"
  1524. 1297.97 s [algebraic-graphs] OK: show (vertex (-1) + vertex (-2) ) == "vertices [-2,-1]"
  1525. 1297.97 s [algebraic-graphs] OK: show (vertex (-2) * vertex (-1) ) == "edge (-2) (-1)"
  1526. 1297.97 s [algebraic-graphs] OK: show (vertex (-3) * vertex (-2) * vertex (-1)) == "edges [(-3,-2),(-3,-1),(-2,-1)]"
  1527. 1297.97 s [algebraic-graphs] OK: show (vertex (-3) * vertex (-2) + vertex (-1)) == "overlay (vertex (-1)) (edge (-3) (-2))"
  1528. 1297.97 s [algebraic-graphs]
  1529. 1297.97 s [algebraic-graphs] OK: show (2 * 1 ) == "edge 1 2"
  1530. 1297.97 s [algebraic-graphs] OK: show (1 * 2 * 1) == "edges [(1,1),(1,2)]"
  1531. 1297.97 s [algebraic-graphs] OK: show (3 * 2 * 1) == "edges [(1,2),(1,3),(2,3)]"
  1532. 1297.97 s [algebraic-graphs]
  1533. 1297.97 s [algebraic-graphs] ============ Graph.Undirected.toUndirected ============
  1534. 1297.97 s [algebraic-graphs] OK: toUndirected (edge 1 2) == edge 1 2
  1535. 1297.97 s [algebraic-graphs] OK: toUndirected . fromUndirected == id
  1536. 1297.97 s [algebraic-graphs] OK: vertexCount . toUndirected == vertexCount
  1537. 1297.97 s [algebraic-graphs] OK: (*2) . edgeCount . toUndirected >= edgeCount
  1538. 1297.97 s [algebraic-graphs]
  1539. 1297.97 s [algebraic-graphs] ============ Graph.Undirected.fromUndirected ============
  1540. 1297.97 s [algebraic-graphs] OK: fromUndirected (edge 1 2) == edges [(1,2),(2,1)]
  1541. 1297.97 s [algebraic-graphs] OK: toUndirected . fromUndirected == id
  1542. 1297.97 s [algebraic-graphs] OK: vertexCount . fromUndirected == vertexCount
  1543. 1297.97 s [algebraic-graphs] OK: edgeCount . fromUndirected <= (*2) . edgeCount
  1544. 1297.97 s [algebraic-graphs]
  1545. 1297.97 s [algebraic-graphs] ============ Graph.Undirected.complement ================
  1546. 1297.97 s [algebraic-graphs] OK: complement empty == empty
  1547. 1297.97 s [algebraic-graphs] OK: complement (vertex x) == vertex x
  1548. 1297.97 s [algebraic-graphs] OK: complement (edge 1 1) == edge 1 1
  1549. 1297.97 s [algebraic-graphs] OK: complement (edge 1 2) == vertices [1, 2]
  1550. 1297.97 s [algebraic-graphs] OK: complement (star 1 [2, 3]) == overlay (vertex 1) (edge 2 3)
  1551. 1297.97 s [algebraic-graphs] OK: complement . complement == id
  1552. 1297.97 s [algebraic-graphs]
  1553. 1297.97 s [algebraic-graphs] ============ Graph.Undirected.Ord ============
  1554. 1297.97 s [algebraic-graphs] OK: vertex 1 < vertex 2
  1555. 1297.97 s [algebraic-graphs] OK: vertex 3 < edge 1 2
  1556. 1297.97 s [algebraic-graphs] OK: vertex 1 < edge 1 1
  1557. 1297.97 s [algebraic-graphs] OK: edge 1 1 < edge 1 2
  1558. 1297.97 s [algebraic-graphs] OK: edge 1 2 < edge 1 1 + edge 2 2
  1559. 1297.97 s [algebraic-graphs] OK: edge 2 1 < edge 1 3
  1560. 1297.97 s [algebraic-graphs] OK: edge 1 2 == edge 2 1
  1561. 1297.97 s [algebraic-graphs] OK: x <= x + y
  1562. 1297.97 s [algebraic-graphs] OK: x + y <= x * y
  1563. 1297.97 s [algebraic-graphs]
  1564. 1297.97 s [algebraic-graphs] ============ Graph.Undirected.empty ============
  1565. 1297.97 s [algebraic-graphs] OK: isEmpty empty == True
  1566. 1297.97 s [algebraic-graphs] OK: hasVertex x empty == False
  1567. 1297.97 s [algebraic-graphs] OK: vertexCount empty == 0
  1568. 1297.97 s [algebraic-graphs] OK: edgeCount empty == 0
  1569. 1297.97 s [algebraic-graphs]
  1570. 1297.97 s [algebraic-graphs] ============ Graph.Undirected.vertex ============
  1571. 1297.97 s [algebraic-graphs] OK: isEmpty (vertex x) == False
  1572. 1297.97 s [algebraic-graphs] OK: hasVertex x (vertex y) == (x == y)
  1573. 1297.97 s [algebraic-graphs] OK: vertexCount (vertex x) == 1
  1574. 1297.97 s [algebraic-graphs] OK: edgeCount (vertex x) == 0
  1575. 1297.97 s [algebraic-graphs]
  1576. 1297.97 s [algebraic-graphs] ============ Graph.Undirected.edge ============
  1577. 1297.97 s [algebraic-graphs] OK: edge x y == connect (vertex x) (vertex y)
  1578. 1297.97 s [algebraic-graphs] OK: edge x y == edge y x
  1579. 1305.06 s [algebraic-graphs] OK: edge x y == edges [(x,y), (y,x)]
  1580. 1305.06 s [algebraic-graphs] OK: hasEdge x y (edge x y) == True
  1581. 1305.06 s [algebraic-graphs] OK: edgeCount (edge x y) == 1
  1582. 1305.10 s [algebraic-graphs] OK: vertexCount (edge 1 1) == 1
  1583. 1305.10 s [algebraic-graphs] OK: vertexCount (edge 1 2) == 2
  1584. 1305.10 s [algebraic-graphs]
  1585. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.overlay ============
  1586. 1305.10 s [algebraic-graphs] OK: isEmpty (overlay x y) == isEmpty x && isEmpty y
  1587. 1305.10 s [algebraic-graphs] OK: hasVertex z (overlay x y) == hasVertex z x || hasVertex z y
  1588. 1305.10 s [algebraic-graphs] OK: vertexCount (overlay x y) >= vertexCount x
  1589. 1305.10 s [algebraic-graphs] OK: vertexCount (overlay x y) <= vertexCount x + vertexCount y
  1590. 1305.10 s [algebraic-graphs] OK: edgeCount (overlay x y) >= edgeCount x
  1591. 1305.10 s [algebraic-graphs] OK: edgeCount (overlay x y) <= edgeCount x + edgeCount y
  1592. 1305.10 s [algebraic-graphs] OK: vertexCount (overlay 1 2) == 2
  1593. 1305.10 s [algebraic-graphs] OK: edgeCount (overlay 1 2) == 0
  1594. 1305.10 s [algebraic-graphs]
  1595. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.connect ============
  1596. 1305.10 s [algebraic-graphs] OK: connect x y == connect y x
  1597. 1305.10 s [algebraic-graphs] OK: isEmpty (connect x y) == isEmpty x && isEmpty y
  1598. 1305.10 s [algebraic-graphs] OK: hasVertex z (connect x y) == hasVertex z x || hasVertex z y
  1599. 1305.10 s [algebraic-graphs] OK: vertexCount (connect x y) >= vertexCount x
  1600. 1305.10 s [algebraic-graphs] OK: vertexCount (connect x y) <= vertexCount x + vertexCount y
  1601. 1305.10 s [algebraic-graphs] OK: edgeCount (connect x y) >= edgeCount x
  1602. 1305.10 s [algebraic-graphs] OK: edgeCount (connect x y) >= edgeCount y
  1603. 1305.10 s [algebraic-graphs] OK: edgeCount (connect x y) >= vertexCount x * vertexCount y `div` 2
  1604. 1305.10 s [algebraic-graphs] OK: edgeCount (connect x y) <= vertexCount x * vertexCount y + edgeCount x + edgeCount y
  1605. 1305.10 s [algebraic-graphs] OK: vertexCount (connect 1 2) == 2
  1606. 1305.10 s [algebraic-graphs] OK: edgeCount (connect 1 2) == 1
  1607. 1305.10 s [algebraic-graphs]
  1608. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.vertices ============
  1609. 1305.10 s [algebraic-graphs] OK: vertices [] == empty
  1610. 1305.10 s [algebraic-graphs] OK: vertices [x] == vertex x
  1611. 1305.10 s [algebraic-graphs] OK: vertices == overlays . map vertex
  1612. 1305.10 s [algebraic-graphs] OK: hasVertex x . vertices == elem x
  1613. 1305.10 s [algebraic-graphs] OK: vertexCount . vertices == length . nub
  1614. 1305.10 s [algebraic-graphs] OK: vertexSet . vertices == Set.fromList
  1615. 1305.10 s [algebraic-graphs]
  1616. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.edges ============
  1617. 1305.10 s [algebraic-graphs] OK: edges [] == empty
  1618. 1305.10 s [algebraic-graphs] OK: edges [(x,y)] == edge x y
  1619. 1305.10 s [algebraic-graphs] OK: edges [(x,y), (y,x)] == edge x y
  1620. 1305.10 s [algebraic-graphs]
  1621. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.overlays ============
  1622. 1305.10 s [algebraic-graphs] OK: overlays [] == empty
  1623. 1305.10 s [algebraic-graphs] OK: overlays [x] == x
  1624. 1305.10 s [algebraic-graphs] OK: overlays [x,y] == overlay x y
  1625. 1305.10 s [algebraic-graphs] OK: overlays == foldr overlay empty
  1626. 1305.10 s [algebraic-graphs] OK: isEmpty . overlays == all isEmpty
  1627. 1305.10 s [algebraic-graphs]
  1628. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.connects ============
  1629. 1305.10 s [algebraic-graphs] OK: connects [] == empty
  1630. 1305.10 s [algebraic-graphs] OK: connects [x] == x
  1631. 1305.10 s [algebraic-graphs] OK: connects [x,y] == connect x y
  1632. 1305.10 s [algebraic-graphs] OK: connects == foldr connect empty
  1633. 1305.10 s [algebraic-graphs] OK: isEmpty . connects == all isEmpty
  1634. 1305.10 s [algebraic-graphs] OK: connects == connects . reverse
  1635. 1305.10 s [algebraic-graphs]
  1636. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.isSubgraphOf ============
  1637. 1305.10 s [algebraic-graphs] OK: isSubgraphOf empty x == True
  1638. 1305.10 s [algebraic-graphs] OK: isSubgraphOf (vertex x) empty == False
  1639. 1305.10 s [algebraic-graphs] OK: isSubgraphOf x (overlay x y) == True
  1640. 1305.10 s [algebraic-graphs] OK: isSubgraphOf (overlay x y) (connect x y) == True
  1641. 1305.10 s [algebraic-graphs] OK: isSubgraphOf (path xs) (circuit xs) == True
  1642. 1305.10 s [algebraic-graphs] OK: isSubgraphOf x y ==> x <= y
  1643. 1305.10 s [algebraic-graphs] OK: isSubgraphOf (edge x y) (edge y x) == True
  1644. 1305.10 s [algebraic-graphs]
  1645. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.path ============
  1646. 1305.10 s [algebraic-graphs] OK: path [] == empty
  1647. 1305.10 s [algebraic-graphs] OK: path [x] == vertex x
  1648. 1305.10 s [algebraic-graphs] OK: path [x,y] == edge x y
  1649. 1305.10 s [algebraic-graphs] OK: path == path . reverse
  1650. 1305.10 s [algebraic-graphs]
  1651. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.circuit ============
  1652. 1305.10 s [algebraic-graphs] OK: circuit [] == empty
  1653. 1305.10 s [algebraic-graphs] OK: circuit [x] == edge x x
  1654. 1305.10 s [algebraic-graphs] OK: circuit [x,y] == edges [(x,y), (y,x)]
  1655. 1305.10 s [algebraic-graphs] OK: circuit == circuit . reverse
  1656. 1305.10 s [algebraic-graphs]
  1657. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.clique ============
  1658. 1305.10 s [algebraic-graphs] OK: clique [] == empty
  1659. 1305.10 s [algebraic-graphs] OK: clique [x] == vertex x
  1660. 1305.10 s [algebraic-graphs] OK: clique [x,y] == edge x y
  1661. 1305.10 s [algebraic-graphs] OK: clique [x,y,z] == edges [(x,y), (x,z), (y,z)]
  1662. 1305.10 s [algebraic-graphs] OK: clique (xs ++ ys) == connect (clique xs) (clique ys)
  1663. 1305.10 s [algebraic-graphs] OK: clique == clique . reverse
  1664. 1305.10 s [algebraic-graphs]
  1665. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.biclique ============
  1666. 1305.10 s [algebraic-graphs] OK: biclique [] [] == empty
  1667. 1305.10 s [algebraic-graphs] OK: biclique [x] [] == vertex x
  1668. 1305.10 s [algebraic-graphs] OK: biclique [] [y] == vertex y
  1669. 1305.10 s [algebraic-graphs] OK: biclique [x1,x2] [y1,y2] == edges [(x1,y1), (x1,y2), (x2,y1), (x2,y2)]
  1670. 1305.10 s [algebraic-graphs] OK: biclique xs ys == connect (vertices xs) (vertices ys)
  1671. 1305.10 s [algebraic-graphs]
  1672. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.star ============
  1673. 1305.10 s [algebraic-graphs] OK: star x [] == vertex x
  1674. 1305.10 s [algebraic-graphs] OK: star x [y] == edge x y
  1675. 1305.10 s [algebraic-graphs] OK: star x [y,z] == edges [(x,y), (x,z)]
  1676. 1305.10 s [algebraic-graphs] OK: star x ys == connect (vertex x) (vertices ys)
  1677. 1305.10 s [algebraic-graphs]
  1678. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.stars ============
  1679. 1305.10 s [algebraic-graphs] OK: stars [] == empty
  1680. 1305.10 s [algebraic-graphs] OK: stars [(x, [])] == vertex x
  1681. 1305.10 s [algebraic-graphs] OK: stars [(x, [y])] == edge x y
  1682. 1305.10 s [algebraic-graphs] OK: stars [(x, ys)] == star x ys
  1683. 1305.10 s [algebraic-graphs] OK: stars == overlays . map (uncurry star)
  1684. 1305.10 s [algebraic-graphs] OK: stars . adjacencyList == id
  1685. 1305.10 s [algebraic-graphs] OK: overlay (stars xs) (stars ys) == stars (xs ++ ys)
  1686. 1305.10 s [algebraic-graphs]
  1687. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.tree ============
  1688. 1305.10 s [algebraic-graphs] OK: tree (Node x []) == vertex x
  1689. 1305.10 s [algebraic-graphs] OK: tree (Node x [Node y [Node z []]]) == path [x,y,z]
  1690. 1305.10 s [algebraic-graphs] OK: tree (Node x [Node y [], Node z []]) == star x [y,z]
  1691. 1305.10 s [algebraic-graphs] OK: tree (Node 1 [Node 2 [], Node 3 [Node 4 [], Node 5 []]]) == edges [(1,2), (1,3), (3,4), (3,5)]
  1692. 1305.10 s [algebraic-graphs]
  1693. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.forest ============
  1694. 1305.10 s [algebraic-graphs] OK: forest [] == empty
  1695. 1305.10 s [algebraic-graphs] OK: forest [x] == tree x
  1696. 1305.10 s [algebraic-graphs] OK: forest [Node 1 [Node 2 [], Node 3 []], Node 4 [Node 5 []]] == edges [(1,2), (1,3), (4,5)]
  1697. 1305.10 s [algebraic-graphs] OK: forest == overlays . map tree
  1698. 1305.10 s [algebraic-graphs]
  1699. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.removeVertex ============
  1700. 1305.10 s [algebraic-graphs] OK: removeVertex x (vertex x) == empty
  1701. 1305.10 s [algebraic-graphs] OK: removeVertex 1 (vertex 2) == vertex 2
  1702. 1305.10 s [algebraic-graphs] OK: removeVertex x (edge x x) == empty
  1703. 1305.10 s [algebraic-graphs] OK: removeVertex 1 (edge 1 2) == vertex 2
  1704. 1305.10 s [algebraic-graphs] OK: removeVertex x . removeVertex x == removeVertex x
  1705. 1305.10 s [algebraic-graphs]
  1706. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.removeEdge ============
  1707. 1305.10 s [algebraic-graphs] OK: removeEdge x y (edge x y) == vertices [x,y]
  1708. 1305.10 s [algebraic-graphs] OK: removeEdge x y . removeEdge x y == removeEdge x y
  1709. 1305.10 s [algebraic-graphs] OK: removeEdge x y . removeVertex x == removeVertex x
  1710. 1305.10 s [algebraic-graphs] OK: removeEdge 1 1 (1 * 1 * 2 * 2) == 1 * 2 * 2
  1711. 1305.10 s [algebraic-graphs] OK: removeEdge 1 2 (1 * 1 * 2 * 2) == 1 * 1 + 2 * 2
  1712. 1305.10 s [algebraic-graphs] OK: removeEdge x y == removeEdge y x
  1713. 1305.10 s [algebraic-graphs]
  1714. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.replaceVertex ============
  1715. 1305.10 s [algebraic-graphs] OK: replaceVertex x x == id
  1716. 1305.10 s [algebraic-graphs] OK: replaceVertex x y (vertex x) == vertex y
  1717. 1305.10 s [algebraic-graphs] OK: replaceVertex x y == mergeVertices (== x) y
  1718. 1305.10 s [algebraic-graphs]
  1719. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.mergeVertices ============
  1720. 1305.10 s [algebraic-graphs] OK: mergeVertices (const False) x == id
  1721. 1305.10 s [algebraic-graphs] OK: mergeVertices (== x) y == replaceVertex x y
  1722. 1305.10 s [algebraic-graphs] OK: mergeVertices even 1 (0 * 2) == 1 * 1
  1723. 1305.10 s [algebraic-graphs] OK: mergeVertices odd 1 (3 + 4 * 5) == 4 * 1
  1724. 1305.10 s [algebraic-graphs]
  1725. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.gmap ============
  1726. 1305.10 s [algebraic-graphs] OK: gmap f empty == empty
  1727. 1305.10 s [algebraic-graphs] OK: gmap f (vertex x) == vertex (f x)
  1728. 1305.10 s [algebraic-graphs] OK: gmap f (edge x y) == edge (f x) (f y)
  1729. 1305.10 s [algebraic-graphs] OK: gmap id == id
  1730. 1305.10 s [algebraic-graphs] OK: gmap f . gmap g == gmap (f . g)
  1731. 1305.10 s [algebraic-graphs]
  1732. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.induce ============
  1733. 1305.10 s [algebraic-graphs] OK: induce (const True ) x == x
  1734. 1305.10 s [algebraic-graphs] OK: induce (const False) x == empty
  1735. 1305.10 s [algebraic-graphs] OK: induce (/= x) == removeVertex x
  1736. 1305.10 s [algebraic-graphs] OK: induce p . induce q == induce (\x -> p x && q x)
  1737. 1305.10 s [algebraic-graphs] OK: isSubgraphOf (induce p x) x == True
  1738. 1305.10 s [algebraic-graphs]
  1739. 1305.10 s [algebraic-graphs] ============ Graph.Undirected.induceJust ============
  1740. 1305.10 s [algebraic-graphs] OK: induceJust (vertex Nothing) == empty
  1741. 1305.10 s [algebraic-graphs] OK: induceJust (edge (Just x) Nothing) == vertex x
  1742. 1305.10 s [algebraic-graphs] OK: induceJust . gmap Just == id
  1743. 1305.10 s [algebraic-graphs] OK: induceJust . gmap (\x -> if p x then Just x else Nothing) == induce p
  1744. 1305.10 s [algebraic-graphs] Test suite main: PASS
  1745. 1305.10 s [algebraic-graphs] Test suite logged to: dist/test/algebraic-graphs-0.7-main.log
  1746. 1305.10 s [algebraic-graphs] 1 of 1 test suites (1 of 1 test cases) passed.
  1747. 1305.10 s [algebraic-graphs] checkPhase completed in 1 minutes 35 seconds
  1748. 1305.10 s [algebraic-graphs] Phase: haddockPhase
  1749. 1305.16 s [algebraic-graphs] Preprocessing library for algebraic-graphs-0.7...
  1750. 1305.17 s [algebraic-graphs] Running Haddock on library for algebraic-graphs-0.7...
  1751. 1305.28 s [algebraic-graphs] [ 1 of 29] Compiling Algebra.Graph.AdjacencyMap ( src/Algebra/Graph/AdjacencyMap.hs, nothing )
  1752. 1305.48 s [algebraic-graphs] [ 2 of 29] Compiling Algebra.Graph.AdjacencyIntMap ( src/Algebra/Graph/AdjacencyIntMap.hs, nothing )
  1753. 1305.53 s [algebraic-graphs] [ 3 of 29] Compiling Algebra.Graph.AdjacencyIntMap.Algorithm ( src/Algebra/Graph/AdjacencyIntMap/Algorithm.hs, nothing )
  1754. 1305.61 s [algebraic-graphs] [ 4 of 29] Compiling Algebra.Graph.Internal ( src/Algebra/Graph/Internal.hs, nothing )
  1755. 1305.64 s [algebraic-graphs] [ 5 of 29] Compiling Algebra.Graph ( src/Algebra/Graph.hs, nothing )
  1756. 1305.74 s [algebraic-graphs] [ 6 of 29] Compiling Algebra.Graph.HigherKinded.Class ( src/Algebra/Graph/HigherKinded/Class.hs, nothing )
  1757. 1305.77 s [algebraic-graphs] [ 7 of 29] Compiling Algebra.Graph.Bipartite.AdjacencyMap ( src/Algebra/Graph/Bipartite/AdjacencyMap.hs, nothing )
  1758. 1305.89 s [algebraic-graphs] [ 8 of 29] Compiling Algebra.Graph.Bipartite.AdjacencyMap.Algorithm ( src/Algebra/Graph/Bipartite/AdjacencyMap/Algorithm.hs, nothing )
  1759. 1305.95 s [algebraic-graphs] [ 9 of 29] Compiling Algebra.Graph.Label ( src/Algebra/Graph/Label.hs, nothing )
  1760. 1306.11 s [algebraic-graphs] [10 of 29] Compiling Algebra.Graph.NonEmpty.AdjacencyMap ( src/Algebra/Graph/NonEmpty/AdjacencyMap.hs, nothing )
  1761. 1306.15 s [algebraic-graphs] [11 of 29] Compiling Algebra.Graph.AdjacencyMap.Algorithm ( src/Algebra/Graph/AdjacencyMap/Algorithm.hs, nothing )
  1762. 1306.22 s [algebraic-graphs] src/Algebra/Graph/AdjacencyMap/Algorithm.hs:384:43: warning: [GHC-63394] [-Wx-partial]
  1763. 1306.22 s [algebraic-graphs] In the use of ‘head’
  1764. 1306.22 s [algebraic-graphs] (imported from Prelude, but defined in GHC.Internal.List):
  1765. 1306.22 s [algebraic-graphs] "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
  1766. 1306.22 s [algebraic-graphs] |
  1767. 1306.22 s [algebraic-graphs] 384 | exit v = do newComponent <- (v==).snd.head <$> gets boundaryStack
  1768. 1306.22 s [algebraic-graphs] | ^^^^
  1769. 1306.22 s [algebraic-graphs]
  1770. 1306.22 s [algebraic-graphs] src/Algebra/Graph/AdjacencyMap/Algorithm.hs:391:21: warning: [GHC-63394] [-Wx-partial]
  1771. 1306.22 s [algebraic-graphs] In the use of ‘tail’
  1772. 1306.22 s [algebraic-graphs] (imported from Prelude, but defined in GHC.Internal.List):
  1773. 1306.22 s [algebraic-graphs] "This is a partial function, it throws an error on empty lists. Replace it with 'drop' 1, or use pattern matching or 'GHC.Internal.Data.List.uncons' instead. Consider refactoring to use "Data.List.NonEmpty"."
  1774. 1306.22 s [algebraic-graphs] |
  1775. 1306.22 s [algebraic-graphs] 391 | pth' = tail v_pth' -- Here we know that v_pth' starts with v
  1776. 1306.22 s [algebraic-graphs] | ^^^^
  1777. 1306.22 s [algebraic-graphs]
  1778. 1306.22 s [algebraic-graphs] src/Algebra/Graph/AdjacencyMap/Algorithm.hs:395:26: warning: [GHC-63394] [-Wx-partial]
  1779. 1306.22 s [algebraic-graphs] In the use of ‘head’
  1780. 1306.22 s [algebraic-graphs] (imported from Prelude, but defined in GHC.Internal.List):
  1781. 1306.22 s [algebraic-graphs] "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
  1782. 1306.22 s [algebraic-graphs] |
  1783. 1306.22 s [algebraic-graphs] 395 | p_v = fst $ head bnd
  1784. 1306.22 s [algebraic-graphs] | ^^^^
  1785. 1306.22 s [algebraic-graphs]
  1786. 1306.22 s [algebraic-graphs] src/Algebra/Graph/AdjacencyMap/Algorithm.hs:397:21: warning: [GHC-63394] [-Wx-partial]
  1787. 1306.22 s [algebraic-graphs] In the use of ‘tail’
  1788. 1306.22 s [algebraic-graphs] (imported from Prelude, but defined in GHC.Internal.List):
  1789. 1306.22 s [algebraic-graphs] "This is a partial function, it throws an error on empty lists. Replace it with 'drop' 1, or use pattern matching or 'GHC.Internal.Data.List.uncons' instead. Consider refactoring to use "Data.List.NonEmpty"."
  1790. 1306.22 s [algebraic-graphs] |
  1791. 1306.22 s [algebraic-graphs] 397 | bnd' = tail bnd
  1792. 1306.22 s [algebraic-graphs] | ^^^^
  1793. 1306.22 s [algebraic-graphs]
  1794. 1306.22 s [algebraic-graphs] [12 of 29] Compiling Algebra.Graph.Acyclic.AdjacencyMap ( src/Algebra/Graph/Acyclic/AdjacencyMap.hs, nothing )
  1795. 1306.25 s [algebraic-graphs] [13 of 29] Compiling Algebra.Graph.ToGraph ( src/Algebra/Graph/ToGraph.hs, nothing )
  1796. 1306.35 s [algebraic-graphs] src/Algebra/Graph/ToGraph.hs:171:32: warning: [GHC-58520] [-Wtype-equality-requires-operators]
  1797. 1306.35 s [algebraic-graphs] The use of ‘~’ without TypeOperators
  1798. 1306.35 s [algebraic-graphs] will become an error in a future GHC release.
  1799. 1306.35 s [algebraic-graphs] Suggested fix: Perhaps you intended to use TypeOperators
  1800. 1306.35 s [algebraic-graphs] |
  1801. 1306.35 s [algebraic-graphs] 171 | vertexIntSet :: ToVertex t ~ Int => t -> IntSet
  1802. 1306.35 s [algebraic-graphs] | ^
  1803. 1306.35 s [algebraic-graphs]
  1804. 1306.35 s [algebraic-graphs] src/Algebra/Graph/ToGraph.hs:197:29: warning: [GHC-58520] [-Wtype-equality-requires-operators]
  1805. 1306.35 s [algebraic-graphs] The use of ‘~’ without TypeOperators
  1806. 1306.35 s [algebraic-graphs] will become an error in a future GHC release.
  1807. 1306.35 s [algebraic-graphs] Suggested fix: Perhaps you intended to use TypeOperators
  1808. 1306.35 s [algebraic-graphs] |
  1809. 1306.35 s [algebraic-graphs] 197 | preIntSet :: ToVertex t ~ Int => Int -> t -> IntSet
  1810. 1306.35 s [algebraic-graphs] | ^
  1811. 1306.35 s [algebraic-graphs]
  1812. 1306.35 s [algebraic-graphs] src/Algebra/Graph/ToGraph.hs:215:30: warning: [GHC-58520] [-Wtype-equality-requires-operators]
  1813. 1306.35 s [algebraic-graphs] The use of ‘~’ without TypeOperators
  1814. 1306.35 s [algebraic-graphs] will become an error in a future GHC release.
  1815. 1306.35 s [algebraic-graphs] Suggested fix: Perhaps you intended to use TypeOperators
  1816. 1306.35 s [algebraic-graphs] |
  1817. 1306.35 s [algebraic-graphs] 215 | postIntSet :: ToVertex t ~ Int => Int -> t -> IntSet
  1818. 1306.35 s [algebraic-graphs] | ^
  1819. 1306.35 s [algebraic-graphs]
  1820. 1306.35 s [algebraic-graphs] src/Algebra/Graph/ToGraph.hs:303:37: warning: [GHC-58520] [-Wtype-equality-requires-operators]
  1821. 1306.35 s [algebraic-graphs] The use of ‘~’ without TypeOperators
  1822. 1306.35 s [algebraic-graphs] will become an error in a future GHC release.
  1823. 1306.35 s [algebraic-graphs] Suggested fix: Perhaps you intended to use TypeOperators
  1824. 1306.35 s [algebraic-graphs] |
  1825. 1306.36 s [algebraic-graphs] 303 | toAdjacencyIntMap :: ToVertex t ~ Int => t -> AIM.AdjacencyIntMap
  1826. 1306.36 s [algebraic-graphs] | ^
  1827. 1306.36 s [algebraic-graphs]
  1828. 1306.36 s [algebraic-graphs] src/Algebra/Graph/ToGraph.hs:312:46: warning: [GHC-58520] [-Wtype-equality-requires-operators]
  1829. 1306.36 s [algebraic-graphs] The use of ‘~’ without TypeOperators
  1830. 1306.36 s [algebraic-graphs] will become an error in a future GHC release.
  1831. 1306.36 s [algebraic-graphs] Suggested fix: Perhaps you intended to use TypeOperators
  1832. 1306.36 s [algebraic-graphs] |
  1833. 1306.36 s [algebraic-graphs] 312 | toAdjacencyIntMapTranspose :: ToVertex t ~ Int => t -> AIM.AdjacencyIntMap
  1834. 1306.36 s [algebraic-graphs] | ^
  1835. 1306.36 s [algebraic-graphs]
  1836. 1306.36 s [algebraic-graphs] src/Algebra/Graph/ToGraph.hs:452:43: warning: [GHC-58520] [-Wtype-equality-requires-operators]
  1837. 1306.36 s [algebraic-graphs] The use of ‘~’ without TypeOperators
  1838. 1306.36 s [algebraic-graphs] will become an error in a future GHC release.
  1839. 1306.36 s [algebraic-graphs] Suggested fix: Perhaps you intended to use TypeOperators
  1840. 1306.36 s [algebraic-graphs] |
  1841. 1306.36 s [algebraic-graphs] 452 | adjacencyIntMap :: (ToGraph t, ToVertex t ~ Int) => t -> IntMap IntSet
  1842. 1306.36 s [algebraic-graphs] | ^
  1843. 1306.36 s [algebraic-graphs]
  1844. 1306.36 s [algebraic-graphs] src/Algebra/Graph/ToGraph.hs:471:52: warning: [GHC-58520] [-Wtype-equality-requires-operators]
  1845. 1306.36 s [algebraic-graphs] The use of ‘~’ without TypeOperators
  1846. 1306.36 s [algebraic-graphs] will become an error in a future GHC release.
  1847. 1306.36 s [algebraic-graphs] Suggested fix: Perhaps you intended to use TypeOperators
  1848. 1306.36 s [algebraic-graphs] |
  1849. 1306.36 s [algebraic-graphs] 471 | adjacencyIntMapTranspose :: (ToGraph t, ToVertex t ~ Int) => t -> IntMap IntSet
  1850. 1306.36 s [algebraic-graphs] | ^
  1851. 1306.36 s [algebraic-graphs]
  1852. 1306.36 s [algebraic-graphs] [14 of 29] Compiling Algebra.Graph.Relation ( src/Algebra/Graph/Relation.hs, nothing )
  1853. 1306.42 s [algebraic-graphs] [15 of 29] Compiling Algebra.Graph.Relation.Symmetric ( src/Algebra/Graph/Relation/Symmetric.hs, nothing )
  1854. 1306.46 s [algebraic-graphs] [16 of 29] Compiling Algebra.Graph.NonEmpty ( src/Algebra/Graph/NonEmpty.hs, nothing )
  1855. 1306.59 s [algebraic-graphs] [17 of 29] Compiling Algebra.Graph.Labelled.AdjacencyMap ( src/Algebra/Graph/Labelled/AdjacencyMap.hs, nothing )
  1856. 1306.67 s [algebraic-graphs] [18 of 29] Compiling Algebra.Graph.Labelled ( src/Algebra/Graph/Labelled.hs, nothing )
  1857. 1306.73 s [algebraic-graphs] [19 of 29] Compiling Algebra.Graph.Labelled.Example.Network ( src/Algebra/Graph/Labelled/Example/Network.hs, nothing )
  1858. 1306.74 s [algebraic-graphs] [20 of 29] Compiling Algebra.Graph.Labelled.Example.Automaton ( src/Algebra/Graph/Labelled/Example/Automaton.hs, nothing )
  1859. 1306.75 s [algebraic-graphs] [21 of 29] Compiling Algebra.Graph.Export ( src/Algebra/Graph/Export.hs, nothing )
  1860. 1306.77 s [algebraic-graphs] src/Algebra/Graph/Export.hs:185:41: warning: [GHC-58520] [-Wtype-equality-requires-operators]
  1861. 1306.77 s [algebraic-graphs] The use of ‘~’ without TypeOperators
  1862. 1306.77 s [algebraic-graphs] will become an error in a future GHC release.
  1863. 1306.77 s [algebraic-graphs] Suggested fix: Perhaps you intended to use TypeOperators
  1864. 1306.77 s [algebraic-graphs] |
  1865. 1306.77 s [algebraic-graphs] 185 | export :: (Ord a, ToGraph g, ToVertex g ~ a) => (a -> Doc s) -> (a -> a -> Doc s) -> g -> Doc s
  1866. 1306.77 s [algebraic-graphs] | ^
  1867. 1306.77 s [algebraic-graphs]
  1868. 1306.77 s [algebraic-graphs] [22 of 29] Compiling Algebra.Graph.Export.Dot ( src/Algebra/Graph/Export/Dot.hs, nothing )
  1869. 1306.78 s [algebraic-graphs] src/Algebra/Graph/Export/Dot.hs:121:63: warning: [GHC-58520] [-Wtype-equality-requires-operators]
  1870. 1306.78 s [algebraic-graphs] The use of ‘~’ without TypeOperators
  1871. 1306.78 s [algebraic-graphs] will become an error in a future GHC release.
  1872. 1306.78 s [algebraic-graphs] Suggested fix: Perhaps you intended to use TypeOperators
  1873. 1306.78 s [algebraic-graphs] |
  1874. 1306.78 s [algebraic-graphs] 121 | export :: (IsString s, Monoid s, Ord a, ToGraph g, ToVertex g ~ a) => Style a s -> g -> s
  1875. 1306.78 s [algebraic-graphs] | ^
  1876. 1306.78 s [algebraic-graphs]
  1877. 1306.78 s [algebraic-graphs] src/Algebra/Graph/Export/Dot.hs:165:78: warning: [GHC-58520] [-Wtype-equality-requires-operators]
  1878. 1306.78 s [algebraic-graphs] The use of ‘~’ without TypeOperators
  1879. 1306.78 s [algebraic-graphs] will become an error in a future GHC release.
  1880. 1306.78 s [algebraic-graphs] Suggested fix: Perhaps you intended to use TypeOperators
  1881. 1306.78 s [algebraic-graphs] |
  1882. 1306.78 s [algebraic-graphs] 165 | exportAsIs :: (IsString s, Monoid s, Ord (ToVertex g), ToGraph g, ToVertex g ~ s) => g -> s
  1883. 1306.78 s [algebraic-graphs] | ^
  1884. 1306.78 s [algebraic-graphs]
  1885. 1306.78 s [algebraic-graphs] [23 of 29] Compiling Algebra.Graph.Undirected ( src/Algebra/Graph/Undirected.hs, nothing )
  1886. 1306.88 s [algebraic-graphs] [24 of 29] Compiling Algebra.Graph.Class ( src/Algebra/Graph/Class.hs, nothing )
  1887. 1306.91 s [algebraic-graphs] [25 of 29] Compiling Algebra.Graph.Relation.Transitive ( src/Algebra/Graph/Relation/Transitive.hs, nothing )
  1888. 1306.92 s [algebraic-graphs] [26 of 29] Compiling Algebra.Graph.Relation.Reflexive ( src/Algebra/Graph/Relation/Reflexive.hs, nothing )
  1889. 1306.93 s [algebraic-graphs] [27 of 29] Compiling Algebra.Graph.Relation.Preorder ( src/Algebra/Graph/Relation/Preorder.hs, nothing )
  1890. 1306.94 s [algebraic-graphs] [28 of 29] Compiling Algebra.Graph.Example.Todo ( src/Algebra/Graph/Example/Todo.hs, nothing )
  1891. 1306.95 s [algebraic-graphs] [29 of 29] Compiling Data.Graph.Typed ( src/Data/Graph/Typed.hs, nothing )
  1892. 1306.96 s [algebraic-graphs] Haddock coverage:
  1893. 1306.97 s [algebraic-graphs] Warning: 'empty' is ambiguous. It is defined
  1894. 1306.97 s [algebraic-graphs] * at src/Algebra/Graph/AdjacencyMap.hs:227:1
  1895. 1306.97 s [algebraic-graphs] * in ‘Data.Map.Internal’
  1896. 1306.97 s [algebraic-graphs] * in ‘Data.Set.Internal’
  1897. 1306.97 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  1898. 1306.97 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  1899. 1306.97 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/AdjacencyMap.hs:227:1
  1900. 1306.98 s [algebraic-graphs] 100% ( 58 / 58) in 'Algebra.Graph.AdjacencyMap'
  1901. 1306.99 s [algebraic-graphs] Warning: 'empty' is ambiguous. It is defined
  1902. 1306.99 s [algebraic-graphs] * at src/Algebra/Graph/AdjacencyIntMap.hs:237:1
  1903. 1306.99 s [algebraic-graphs] * in ‘Data.IntMap.Internal’
  1904. 1306.99 s [algebraic-graphs] * in ‘Data.IntSet.Internal’
  1905. 1306.99 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  1906. 1306.99 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  1907. 1306.99 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/AdjacencyIntMap.hs:237:1
  1908. 1307.00 s [algebraic-graphs] 100% ( 56 / 56) in 'Algebra.Graph.AdjacencyIntMap'
  1909. 1307.01 s [algebraic-graphs] Warning: 'nub' is out of scope.
  1910. 1307.01 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1911. 1307.01 s [algebraic-graphs] Warning: 'sort' is out of scope.
  1912. 1307.01 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1913. 1307.01 s [algebraic-graphs] 93% ( 14 / 15) in 'Algebra.Graph.AdjacencyIntMap.Algorithm'
  1914. 1307.01 s [algebraic-graphs] Missing documentation for:
  1915. 1307.01 s [algebraic-graphs] Cycle (src/Algebra/Graph/AdjacencyIntMap/Algorithm.hs:227)
  1916. 1307.01 s [algebraic-graphs] Warning: 'List' is ambiguous. It is defined
  1917. 1307.01 s [algebraic-graphs] * at src/Algebra/Graph/Internal.hs:50:18
  1918. 1307.01 s [algebraic-graphs] * at src/Algebra/Graph/Internal.hs:50:1
  1919. 1307.01 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  1920. 1307.01 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  1921. 1307.01 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Internal.hs:50:1
  1922. 1307.01 s [algebraic-graphs] Warning: 'IsList' is out of scope.
  1923. 1307.01 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1924. 1307.01 s [algebraic-graphs] 100% ( 19 / 19) in 'Algebra.Graph.Internal'
  1925. 1307.01 s [algebraic-graphs] Warning: 'Context' is ambiguous. It is defined
  1926. 1307.01 s [algebraic-graphs] * at src/Algebra/Graph.hs:1400:18
  1927. 1307.01 s [algebraic-graphs] * at src/Algebra/Graph.hs:1400:1
  1928. 1307.01 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  1929. 1307.01 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  1930. 1307.01 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph.hs:1400:1
  1931. 1307.02 s [algebraic-graphs] Warning: 'empty' is ambiguous. It is defined
  1932. 1307.02 s [algebraic-graphs] * at src/Algebra/Graph.hs:316:1
  1933. 1307.02 s [algebraic-graphs] * in ‘Data.Set.Internal’
  1934. 1307.02 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  1935. 1307.02 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  1936. 1307.02 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph.hs:316:1
  1937. 1307.03 s [algebraic-graphs] 100% ( 61 / 61) in 'Algebra.Graph'
  1938. 1307.04 s [algebraic-graphs] Warning: 'mplus' is out of scope.
  1939. 1307.04 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1940. 1307.04 s [algebraic-graphs] Warning: 'vertexCount' is out of scope.
  1941. 1307.04 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1942. 1307.04 s [algebraic-graphs] Warning: 'hasVertex' is out of scope.
  1943. 1307.04 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1944. 1307.04 s [algebraic-graphs] Warning: 'vertexSet' is out of scope.
  1945. 1307.04 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1946. 1307.04 s [algebraic-graphs] Warning: 'isEmpty' is out of scope.
  1947. 1307.04 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1948. 1307.04 s [algebraic-graphs] Warning: 'edgeList' is out of scope.
  1949. 1307.04 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1950. 1307.04 s [algebraic-graphs] Warning: 'adjacencyList' is out of scope.
  1951. 1307.04 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1952. 1307.04 s [algebraic-graphs] Warning: 'box' is out of scope.
  1953. 1307.04 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1954. 1307.04 s [algebraic-graphs] Warning: 'edgeCount' is out of scope.
  1955. 1307.04 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1956. 1307.05 s [algebraic-graphs] 100% ( 42 / 42) in 'Algebra.Graph.HigherKinded.Class'
  1957. 1307.05 s [algebraic-graphs] Warning: 'empty' is ambiguous. It is defined
  1958. 1307.05 s [algebraic-graphs] * at src/Algebra/Graph/Bipartite/AdjacencyMap.hs:250:1
  1959. 1307.05 s [algebraic-graphs] * in ‘Data.Map.Internal’
  1960. 1307.05 s [algebraic-graphs] * in ‘Data.Set.Internal’
  1961. 1307.05 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  1962. 1307.05 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  1963. 1307.05 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Bipartite/AdjacencyMap.hs:250:1
  1964. 1307.05 s [algebraic-graphs] Warning: 'nub' is out of scope.
  1965. 1307.05 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1966. 1307.06 s [algebraic-graphs] Warning: 'swap' is ambiguous. It is defined
  1967. 1307.06 s [algebraic-graphs] * at src/Algebra/Graph/Bipartite/AdjacencyMap.hs:418:1
  1968. 1307.06 s [algebraic-graphs] * in ‘GHC.Internal.Data.Tuple’
  1969. 1307.06 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  1970. 1307.06 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  1971. 1307.06 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Bipartite/AdjacencyMap.hs:418:1
  1972. 1307.06 s [algebraic-graphs] 100% ( 63 / 63) in 'Algebra.Graph.Bipartite.AdjacencyMap'
  1973. 1307.07 s [algebraic-graphs] Warning: 'isRight' is out of scope.
  1974. 1307.07 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  1975. 1307.07 s [algebraic-graphs] Warning: 'Matching' is ambiguous. It is defined
  1976. 1307.07 s [algebraic-graphs] * at src/Algebra/Graph/Bipartite/AdjacencyMap/Algorithm.hs:169:21
  1977. 1307.07 s [algebraic-graphs] * at src/Algebra/Graph/Bipartite/AdjacencyMap/Algorithm.hs:169:1
  1978. 1307.07 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  1979. 1307.07 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  1980. 1307.07 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Bipartite/AdjacencyMap/Algorithm.hs:169:1
  1981. 1307.07 s [algebraic-graphs] Warning: 'empty' is ambiguous. It is defined
  1982. 1307.07 s [algebraic-graphs] * at src/Algebra/Graph/Bipartite/AdjacencyMap.hs:250:1
  1983. 1307.07 s [algebraic-graphs] * in ‘Data.Set.Internal’
  1984. 1307.07 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  1985. 1307.07 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  1986. 1307.07 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Bipartite/AdjacencyMap.hs:250:1
  1987. 1307.07 s [algebraic-graphs] 100% ( 25 / 25) in 'Algebra.Graph.Bipartite.AdjacencyMap.Algorithm'
  1988. 1307.07 s [algebraic-graphs] Warning: 'Optimum' is ambiguous. It is defined
  1989. 1307.07 s [algebraic-graphs] * at src/Algebra/Graph/Label.hs:442:20
  1990. 1307.07 s [algebraic-graphs] * at src/Algebra/Graph/Label.hs:442:1
  1991. 1307.07 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  1992. 1307.07 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  1993. 1307.07 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Label.hs:442:1
  1994. 1307.07 s [algebraic-graphs] Warning: 'Distance' is ambiguous. It is defined
  1995. 1307.07 s [algebraic-graphs] * at src/Algebra/Graph/Label.hs:241:22
  1996. 1307.07 s [algebraic-graphs] * at src/Algebra/Graph/Label.hs:241:1
  1997. 1307.07 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  1998. 1307.07 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  1999. 1307.07 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Label.hs:241:1
  2000. 1307.07 s [algebraic-graphs] Warning: 'Minimum' is ambiguous. It is defined
  2001. 1307.07 s [algebraic-graphs] * at src/Algebra/Graph/Label.hs:314:21
  2002. 1307.07 s [algebraic-graphs] * at src/Algebra/Graph/Label.hs:314:1
  2003. 1307.07 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2004. 1307.07 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2005. 1307.07 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Label.hs:314:1
  2006. 1307.07 s [algebraic-graphs] Warning: 'Capacity' is ambiguous. It is defined
  2007. 1307.07 s [algebraic-graphs] * at src/Algebra/Graph/Label.hs:176:22
  2008. 1307.07 s [algebraic-graphs] * at src/Algebra/Graph/Label.hs:176:1
  2009. 1307.07 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2010. 1307.07 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2011. 1307.07 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Label.hs:176:1
  2012. 1307.07 s [algebraic-graphs] Warning: 'Count' is ambiguous. It is defined
  2013. 1307.07 s [algebraic-graphs] * at src/Algebra/Graph/Label.hs:209:19
  2014. 1307.07 s [algebraic-graphs] * at src/Algebra/Graph/Label.hs:209:1
  2015. 1307.07 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2016. 1307.07 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2017. 1307.07 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Label.hs:209:1
  2018. 1307.08 s [algebraic-graphs] 100% ( 37 / 37) in 'Algebra.Graph.Label'
  2019. 1307.08 s [algebraic-graphs] Warning: 'AdjacencyMap' is ambiguous. It is defined
  2020. 1307.08 s [algebraic-graphs] * at src/Algebra/Graph/AdjacencyMap.hs:157:1
  2021. 1307.08 s [algebraic-graphs] * at src/Algebra/Graph/NonEmpty/AdjacencyMap.hs:152:1
  2022. 1307.08 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2023. 1307.08 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2024. 1307.08 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/NonEmpty/AdjacencyMap.hs:152:1
  2025. 1307.08 s [algebraic-graphs] Warning: 'isEmpty' is out of scope.
  2026. 1307.08 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2027. 1307.08 s [algebraic-graphs] Warning: 'empty' is out of scope.
  2028. 1307.08 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2029. 1307.08 s [algebraic-graphs] Warning: 'vertexList' is out of scope.
  2030. 1307.08 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2031. 1307.08 s [algebraic-graphs] Warning: 'edges' is out of scope.
  2032. 1307.08 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2033. 1307.09 s [algebraic-graphs] Warning: 'adjacencyList' is out of scope.
  2034. 1307.09 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2035. 1307.09 s [algebraic-graphs] Warning: 'stars' is out of scope.
  2036. 1307.09 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2037. 1307.09 s [algebraic-graphs] 100% ( 51 / 51) in 'Algebra.Graph.NonEmpty.AdjacencyMap'
  2038. 1307.10 s [algebraic-graphs] Warning: 'nub' is out of scope.
  2039. 1307.10 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2040. 1307.10 s [algebraic-graphs] Warning: 'sort' is out of scope.
  2041. 1307.10 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2042. 1307.10 s [algebraic-graphs] Warning: 'vertex' is ambiguous. It is defined
  2043. 1307.10 s [algebraic-graphs] * at src/Algebra/Graph/AdjacencyMap.hs:239:1
  2044. 1307.10 s [algebraic-graphs] * at src/Algebra/Graph/NonEmpty/AdjacencyMap.hs:224:1
  2045. 1307.10 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2046. 1307.10 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2047. 1307.10 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/NonEmpty/AdjacencyMap.hs:224:1
  2048. 1307.10 s [algebraic-graphs] Warning: 'edge' is ambiguous. It is defined
  2049. 1307.10 s [algebraic-graphs] * at src/Algebra/Graph/AdjacencyMap.hs:252:1
  2050. 1307.10 s [algebraic-graphs] * at src/Algebra/Graph/NonEmpty/AdjacencyMap.hs:237:1
  2051. 1307.10 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2052. 1307.10 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2053. 1307.10 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/NonEmpty/AdjacencyMap.hs:237:1
  2054. 1307.10 s [algebraic-graphs] 93% ( 15 / 16) in 'Algebra.Graph.AdjacencyMap.Algorithm'
  2055. 1307.10 s [algebraic-graphs] Missing documentation for:
  2056. 1307.10 s [algebraic-graphs] Cycle (src/Algebra/Graph/AdjacencyMap/Algorithm.hs:228)
  2057. 1307.10 s [algebraic-graphs] Warning: 'empty' is ambiguous. It is defined
  2058. 1307.10 s [algebraic-graphs] * at src/Algebra/Graph/Acyclic/AdjacencyMap.hs:132:1
  2059. 1307.10 s [algebraic-graphs] * at src/Algebra/Graph/AdjacencyMap.hs:227:1
  2060. 1307.10 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2061. 1307.10 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2062. 1307.10 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/AdjacencyMap.hs:227:1
  2063. 1307.10 s [algebraic-graphs] Warning: 'vertex' is ambiguous. It is defined
  2064. 1307.10 s [algebraic-graphs] * at src/Algebra/Graph/Acyclic/AdjacencyMap.hs:143:1
  2065. 1307.10 s [algebraic-graphs] * at src/Algebra/Graph/AdjacencyMap.hs:239:1
  2066. 1307.10 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2067. 1307.10 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2068. 1307.10 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/AdjacencyMap.hs:239:1
  2069. 1307.10 s [algebraic-graphs] Warning: 'vertexCount' is ambiguous. It is defined
  2070. 1307.10 s [algebraic-graphs] * at src/Algebra/Graph/Acyclic/AdjacencyMap.hs:246:1
  2071. 1307.10 s [algebraic-graphs] * at src/Algebra/Graph/AdjacencyMap.hs:417:1
  2072. 1307.10 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2073. 1307.10 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2074. 1307.10 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/AdjacencyMap.hs:417:1
  2075. 1307.10 s [algebraic-graphs] Warning: 'edgeCount' is ambiguous. It is defined
  2076. 1307.10 s [algebraic-graphs] * at src/Algebra/Graph/Acyclic/AdjacencyMap.hs:258:1
  2077. 1307.10 s [algebraic-graphs] * at src/Algebra/Graph/AdjacencyMap.hs:429:1
  2078. 1307.10 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2079. 1307.10 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2080. 1307.10 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/AdjacencyMap.hs:429:1
  2081. 1307.11 s [algebraic-graphs] Warning: 'vertices' is ambiguous. It is defined
  2082. 1307.11 s [algebraic-graphs] * at src/Algebra/Graph/Acyclic/AdjacencyMap.hs:157:1
  2083. 1307.11 s [algebraic-graphs] * at src/Algebra/Graph/AdjacencyMap.hs:309:1
  2084. 1307.11 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2085. 1307.11 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2086. 1307.11 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/AdjacencyMap.hs:309:1
  2087. 1307.11 s [algebraic-graphs] 100% ( 44 / 44) in 'Algebra.Graph.Acyclic.AdjacencyMap'
  2088. 1307.11 s [algebraic-graphs] Warning: 'foldg' is ambiguous. It is defined
  2089. 1307.11 s [algebraic-graphs] * at src/Algebra/Graph.hs:482:1
  2090. 1307.11 s [algebraic-graphs] * at src/Algebra/Graph/ToGraph.hs:98:5
  2091. 1307.11 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2092. 1307.11 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2093. 1307.11 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/ToGraph.hs:98:5
  2094. 1307.12 s [algebraic-graphs] 100% ( 8 / 8) in 'Algebra.Graph.ToGraph'
  2095. 1307.12 s [algebraic-graphs] Warning: 'Relation' is ambiguous. It is defined
  2096. 1307.12 s [algebraic-graphs] * at src/Algebra/Graph/Relation.hs:157:19
  2097. 1307.12 s [algebraic-graphs] * at src/Algebra/Graph/Relation.hs:157:1
  2098. 1307.12 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2099. 1307.12 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2100. 1307.12 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Relation.hs:157:1
  2101. 1307.12 s [algebraic-graphs] Warning: 'empty' is ambiguous. It is defined
  2102. 1307.13 s [algebraic-graphs] * at src/Algebra/Graph/Relation.hs:243:1
  2103. 1307.13 s [algebraic-graphs] * in ‘Data.Set.Internal’
  2104. 1307.13 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2105. 1307.13 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2106. 1307.13 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Relation.hs:243:1
  2107. 1307.13 s [algebraic-graphs] Warning: 'AdjacencyMap' is out of scope.
  2108. 1307.13 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2109. 1307.13 s [algebraic-graphs] 100% ( 56 / 56) in 'Algebra.Graph.Relation'
  2110. 1307.14 s [algebraic-graphs] Warning: 'vertexCount' is ambiguous. It is defined
  2111. 1307.14 s [algebraic-graphs] * at src/Algebra/Graph/Relation.hs:423:1
  2112. 1307.14 s [algebraic-graphs] * at src/Algebra/Graph/Relation/Symmetric.hs:372:1
  2113. 1307.14 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2114. 1307.14 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2115. 1307.14 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Relation/Symmetric.hs:372:1
  2116. 1307.14 s [algebraic-graphs] Warning: 'edgeCount' is ambiguous. It is defined
  2117. 1307.14 s [algebraic-graphs] * at src/Algebra/Graph/Relation.hs:435:1
  2118. 1307.14 s [algebraic-graphs] * at src/Algebra/Graph/Relation/Symmetric.hs:384:1
  2119. 1307.14 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2120. 1307.14 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2121. 1307.14 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Relation/Symmetric.hs:384:1
  2122. 1307.14 s [algebraic-graphs] Warning: 'empty' is ambiguous. It is defined
  2123. 1307.14 s [algebraic-graphs] * at src/Algebra/Graph/Relation/Symmetric.hs:188:1
  2124. 1307.14 s [algebraic-graphs] * in ‘Data.Set.Internal’
  2125. 1307.14 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2126. 1307.14 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2127. 1307.14 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Relation/Symmetric.hs:188:1
  2128. 1307.15 s [algebraic-graphs] 100% ( 48 / 48) in 'Algebra.Graph.Relation.Symmetric'
  2129. 1307.16 s [algebraic-graphs] Warning: 'vertexList' is out of scope.
  2130. 1307.16 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2131. 1307.17 s [algebraic-graphs] 100% ( 53 / 53) in 'Algebra.Graph.NonEmpty'
  2132. 1307.17 s [algebraic-graphs] Warning: 'empty' is ambiguous. It is defined
  2133. 1307.17 s [algebraic-graphs] * at src/Algebra/Graph/Labelled/AdjacencyMap.hs:160:1
  2134. 1307.17 s [algebraic-graphs] * in ‘Data.Map.Internal’
  2135. 1307.17 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2136. 1307.17 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2137. 1307.17 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Labelled/AdjacencyMap.hs:160:1
  2138. 1307.17 s [algebraic-graphs] Warning: 'hasEdge' is ambiguous. It is defined
  2139. 1307.17 s [algebraic-graphs] * at src/Algebra/Graph/AdjacencyMap.hs:403:1
  2140. 1307.17 s [algebraic-graphs] * at src/Algebra/Graph/Labelled/AdjacencyMap.hs:379:1
  2141. 1307.17 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2142. 1307.17 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2143. 1307.17 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Labelled/AdjacencyMap.hs:379:1
  2144. 1307.18 s [algebraic-graphs] 100% ( 49 / 49) in 'Algebra.Graph.Labelled.AdjacencyMap'
  2145. 1307.18 s [algebraic-graphs] Warning: 'Context' is ambiguous. It is defined
  2146. 1307.18 s [algebraic-graphs] * at src/Algebra/Graph/Labelled.hs:675:20
  2147. 1307.18 s [algebraic-graphs] * at src/Algebra/Graph/Labelled.hs:675:1
  2148. 1307.18 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2149. 1307.18 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2150. 1307.18 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Labelled.hs:675:1
  2151. 1307.18 s [algebraic-graphs] Warning: 'empty' is ambiguous. It is defined
  2152. 1307.18 s [algebraic-graphs] * at src/Algebra/Graph/Labelled.hs:191:1
  2153. 1307.18 s [algebraic-graphs] * in ‘Data.Set.Internal’
  2154. 1307.18 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2155. 1307.18 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2156. 1307.18 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Labelled.hs:191:1
  2157. 1307.19 s [algebraic-graphs] Warning: 'Focus' is ambiguous. It is defined
  2158. 1307.19 s [algebraic-graphs] * at src/Algebra/Graph/Labelled.hs:642:18
  2159. 1307.19 s [algebraic-graphs] * at src/Algebra/Graph/Labelled.hs:642:1
  2160. 1307.19 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2161. 1307.19 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2162. 1307.19 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Labelled.hs:642:1
  2163. 1307.19 s [algebraic-graphs] 100% ( 49 / 49) in 'Algebra.Graph.Labelled'
  2164. 1307.19 s [algebraic-graphs] 100% ( 6 / 6) in 'Algebra.Graph.Labelled.Example.Network'
  2165. 1307.19 s [algebraic-graphs] 100% ( 5 / 5) in 'Algebra.Graph.Labelled.Example.Automaton'
  2166. 1307.20 s [algebraic-graphs] Warning: 'Doc' is ambiguous. It is defined
  2167. 1307.20 s [algebraic-graphs] * at src/Algebra/Graph/Export.hs:57:17
  2168. 1307.20 s [algebraic-graphs] * at src/Algebra/Graph/Export.hs:57:1
  2169. 1307.20 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2170. 1307.20 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2171. 1307.20 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Export.hs:57:1
  2172. 1307.20 s [algebraic-graphs] 100% ( 14 / 14) in 'Algebra.Graph.Export'
  2173. 1307.20 s [algebraic-graphs] Warning: 'Style' is ambiguous. It is defined
  2174. 1307.20 s [algebraic-graphs] * at src/Algebra/Graph/Export/Dot.hs:49:18
  2175. 1307.20 s [algebraic-graphs] * at src/Algebra/Graph/Export/Dot.hs:49:1
  2176. 1307.20 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2177. 1307.20 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2178. 1307.20 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Export/Dot.hs:49:1
  2179. 1307.20 s [algebraic-graphs] Warning: 'Graph' is out of scope.
  2180. 1307.20 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2181. 1307.20 s [algebraic-graphs] 100% ( 11 / 11) in 'Algebra.Graph.Export.Dot'
  2182. 1307.27 s [algebraic-graphs] Warning: 'empty' is ambiguous. It is defined
  2183. 1307.27 s [algebraic-graphs] * at src/Algebra/Graph/Undirected.hs:253:1
  2184. 1307.27 s [algebraic-graphs] * in ‘Data.Set.Internal’
  2185. 1307.27 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2186. 1307.27 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2187. 1307.27 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Undirected.hs:253:1
  2188. 1307.27 s [algebraic-graphs] 100% ( 50 / 50) in 'Algebra.Graph.Undirected'
  2189. 1307.28 s [algebraic-graphs] 100% ( 27 / 27) in 'Algebra.Graph.Class'
  2190. 1307.28 s [algebraic-graphs] Warning: 'TransitiveRelation' is ambiguous. It is defined
  2191. 1307.28 s [algebraic-graphs] * at src/Algebra/Graph/Relation/Transitive.hs:39:32
  2192. 1307.28 s [algebraic-graphs] * at src/Algebra/Graph/Relation/Transitive.hs:39:1
  2193. 1307.28 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2194. 1307.28 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2195. 1307.28 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Relation/Transitive.hs:39:1
  2196. 1307.28 s [algebraic-graphs] Warning: 'Transitive' is out of scope.
  2197. 1307.28 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2198. 1307.28 s [algebraic-graphs] 100% ( 5 / 5) in 'Algebra.Graph.Relation.Transitive'
  2199. 1307.28 s [algebraic-graphs] Warning: 'ReflexiveRelation' is ambiguous. It is defined
  2200. 1307.28 s [algebraic-graphs] * at src/Algebra/Graph/Relation/Reflexive.hs:34:31
  2201. 1307.28 s [algebraic-graphs] * at src/Algebra/Graph/Relation/Reflexive.hs:34:1
  2202. 1307.28 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2203. 1307.28 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2204. 1307.28 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Relation/Reflexive.hs:34:1
  2205. 1307.28 s [algebraic-graphs] Warning: 'Reflexive' is out of scope.
  2206. 1307.28 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2207. 1307.28 s [algebraic-graphs] 100% ( 5 / 5) in 'Algebra.Graph.Relation.Reflexive'
  2208. 1307.28 s [algebraic-graphs] Warning: 'PreorderRelation' is ambiguous. It is defined
  2209. 1307.28 s [algebraic-graphs] * at src/Algebra/Graph/Relation/Preorder.hs:44:30
  2210. 1307.28 s [algebraic-graphs] * at src/Algebra/Graph/Relation/Preorder.hs:44:1
  2211. 1307.28 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2212. 1307.28 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2213. 1307.28 s [algebraic-graphs] Defaulting to the one defined at src/Algebra/Graph/Relation/Preorder.hs:44:1
  2214. 1307.28 s [algebraic-graphs] Warning: 'Preorder' is out of scope.
  2215. 1307.28 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2216. 1307.28 s [algebraic-graphs] 100% ( 5 / 5) in 'Algebra.Graph.Relation.Preorder'
  2217. 1307.28 s [algebraic-graphs] 0% ( 0 / 8) in 'Algebra.Graph.Example.Todo'
  2218. 1307.28 s [algebraic-graphs] Missing documentation for:
  2219. 1307.28 s [algebraic-graphs] Module header
  2220. 1307.28 s [algebraic-graphs] Todo (src/Algebra/Graph/Example/Todo.hs:13)
  2221. 1307.28 s [algebraic-graphs] todo (src/Algebra/Graph/Example/Todo.hs:42)
  2222. 1307.28 s [algebraic-graphs] low (src/Algebra/Graph/Example/Todo.hs:23)
  2223. 1307.28 s [algebraic-graphs] high (src/Algebra/Graph/Example/Todo.hs:27)
  2224. 1307.28 s [algebraic-graphs] ~*~ (src/Algebra/Graph/Example/Todo.hs:35)
  2225. 1307.28 s [algebraic-graphs] >*< (src/Algebra/Graph/Example/Todo.hs:39)
  2226. 1307.28 s [algebraic-graphs] priority (src/Algebra/Graph/Example/Todo.hs:31)
  2227. 1307.28 s [algebraic-graphs] Warning: 'GraphKL' is ambiguous. It is defined
  2228. 1307.28 s [algebraic-graphs] * at src/Data/Graph/Typed.hs:40:18
  2229. 1307.28 s [algebraic-graphs] * at src/Data/Graph/Typed.hs:40:1
  2230. 1307.28 s [algebraic-graphs] You may be able to disambiguate the identifier by qualifying it or
  2231. 1307.28 s [algebraic-graphs] by specifying the type/value namespace explicitly.
  2232. 1307.28 s [algebraic-graphs] Defaulting to the one defined at src/Data/Graph/Typed.hs:40:1
  2233. 1307.28 s [algebraic-graphs] Warning: 'array' is out of scope.
  2234. 1307.28 s [algebraic-graphs] If you qualify the identifier, haddock can try to link it anyway.
  2235. 1307.29 s [algebraic-graphs] 90% ( 10 / 11) in 'Data.Graph.Typed'
  2236. 1307.29 s [algebraic-graphs] Missing documentation for:
  2237. 1307.29 s [algebraic-graphs] scc (src/Data/Graph/Typed.hs:192)
  2238. 1307.41 s [algebraic-graphs] Warning: Algebra.Graph.AdjacencyMap: could not find link destinations for:
  2239. 1307.41 s [algebraic-graphs] - Algebra.Graph.AdjacencyMap.Rep_AdjacencyMap
  2240. 1307.41 s [algebraic-graphs] - Algebra.Graph.ToGraph.D:R:ToVertexAdjacencyMap0
  2241. 1307.41 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexAdjacencyMap0
  2242. 1307.41 s [algebraic-graphs] Warning: Algebra.Graph.AdjacencyIntMap: could not find link destinations for:
  2243. 1307.41 s [algebraic-graphs] - Algebra.Graph.AdjacencyIntMap.Rep_AdjacencyIntMap
  2244. 1307.41 s [algebraic-graphs] - Algebra.Graph.ToGraph.D:R:ToVertexAdjacencyIntMap
  2245. 1307.41 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexAdjacencyIntMap
  2246. 1307.42 s [algebraic-graphs] Warning: Algebra.Graph.Internal: could not find link destinations for:
  2247. 1307.42 s [algebraic-graphs] - Algebra.Graph.Internal.D:R:ItemList
  2248. 1307.42 s [algebraic-graphs] Warning: Algebra.Graph: could not find link destinations for:
  2249. 1307.42 s [algebraic-graphs] - Algebra.Graph.Rep_Graph
  2250. 1307.42 s [algebraic-graphs] - Algebra.Graph.ToGraph.D:R:ToVertexGraph
  2251. 1307.42 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexGraph1
  2252. 1307.43 s [algebraic-graphs] Warning: Algebra.Graph.Bipartite.AdjacencyMap: could not find link destinations for:
  2253. 1307.43 s [algebraic-graphs] - Algebra.Graph.Bipartite.AdjacencyMap.D:R:ItemList
  2254. 1307.43 s [algebraic-graphs] - Algebra.Graph.Bipartite.AdjacencyMap.Rep_List
  2255. 1307.43 s [algebraic-graphs] - Algebra.Graph.Bipartite.AdjacencyMap.Rep_AdjacencyMap
  2256. 1307.43 s [algebraic-graphs] Warning: Algebra.Graph.Bipartite.AdjacencyMap.Algorithm: could not find link destinations for:
  2257. 1307.43 s [algebraic-graphs] - Algebra.Graph.Bipartite.AdjacencyMap.Algorithm.Rep_Matching
  2258. 1307.44 s [algebraic-graphs] Warning: Algebra.Graph.Label: could not find link destinations for:
  2259. 1307.44 s [algebraic-graphs] - Algebra.Graph.Label.D:R:ItemMinimum
  2260. 1307.44 s [algebraic-graphs] - Algebra.Graph.Label.D:R:ItemLabel
  2261. 1307.44 s [algebraic-graphs] Warning: Algebra.Graph.NonEmpty.AdjacencyMap: could not find link destinations for:
  2262. 1307.44 s [algebraic-graphs] - Algebra.Graph.NonEmpty.AdjacencyMap.Rep_AdjacencyMap
  2263. 1307.44 s [algebraic-graphs] - Algebra.Graph.ToGraph.D:R:ToVertexAdjacencyMap
  2264. 1307.45 s [algebraic-graphs] Warning: Algebra.Graph.ToGraph: could not find link destinations for:
  2265. 1307.45 s [algebraic-graphs] - Algebra.Graph.ToGraph.D:R:ToVertexAdjacencyMap
  2266. 1307.45 s [algebraic-graphs] - Algebra.Graph.ToGraph.D:R:ToVertexAdjacencyIntMap
  2267. 1307.45 s [algebraic-graphs] - Algebra.Graph.ToGraph.D:R:ToVertexAdjacencyMap0
  2268. 1307.45 s [algebraic-graphs] - Algebra.Graph.ToGraph.D:R:ToVertexGraph
  2269. 1307.45 s [algebraic-graphs] - Algebra.Graph.Relation.D:R:ToVertexRelation
  2270. 1307.45 s [algebraic-graphs] - Algebra.Graph.Relation.Symmetric.D:R:ToVertexRelation
  2271. 1307.45 s [algebraic-graphs] - Algebra.Graph.NonEmpty.D:R:ToVertexGraph
  2272. 1307.45 s [algebraic-graphs] - Algebra.Graph.Labelled.AdjacencyMap.D:R:ToVertexAdjacencyMap
  2273. 1307.45 s [algebraic-graphs] - Algebra.Graph.Labelled.D:R:ToVertexGraph
  2274. 1307.45 s [algebraic-graphs] Warning: Algebra.Graph.Relation: could not find link destinations for:
  2275. 1307.45 s [algebraic-graphs] - Algebra.Graph.Relation.D:R:ToVertexRelation
  2276. 1307.45 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexRelation0
  2277. 1307.46 s [algebraic-graphs] Warning: Algebra.Graph.Relation.Symmetric: could not find link destinations for:
  2278. 1307.46 s [algebraic-graphs] - Algebra.Graph.Relation.Symmetric.D:R:ToVertexRelation
  2279. 1307.46 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexRelation
  2280. 1307.46 s [algebraic-graphs] Warning: Algebra.Graph.NonEmpty: could not find link destinations for:
  2281. 1307.46 s [algebraic-graphs] - Algebra.Graph.NonEmpty.D:R:ToVertexGraph
  2282. 1307.46 s [algebraic-graphs] Warning: Algebra.Graph.Labelled.AdjacencyMap: could not find link destinations for:
  2283. 1307.46 s [algebraic-graphs] - Algebra.Graph.Labelled.AdjacencyMap.D:R:ToVertexAdjacencyMap
  2284. 1307.46 s [algebraic-graphs] - Algebra.Graph.Labelled.AdjacencyMap.Rep_AdjacencyMap
  2285. 1307.46 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexAdjacencyMap
  2286. 1307.47 s [algebraic-graphs] Warning: Algebra.Graph.Labelled: could not find link destinations for:
  2287. 1307.47 s [algebraic-graphs] - Algebra.Graph.Labelled.D:R:ToVertexGraph
  2288. 1307.47 s [algebraic-graphs] - Algebra.Graph.Labelled.Rep_Graph
  2289. 1307.47 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexGraph
  2290. 1307.47 s [algebraic-graphs] Warning: Algebra.Graph.Undirected: could not find link destinations for:
  2291. 1307.47 s [algebraic-graphs] - Algebra.Graph.Undirected.Rep_Graph
  2292. 1307.47 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexGraph0
  2293. 1307.48 s [algebraic-graphs] Warning: Algebra.Graph.Class: could not find link destinations for:
  2294. 1307.48 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexTuple3
  2295. 1307.48 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexTuple2
  2296. 1307.48 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexFUN
  2297. 1307.48 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexMaybe
  2298. 1307.48 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexUnit
  2299. 1307.48 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexRelation
  2300. 1307.48 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexRelation0
  2301. 1307.48 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexAdjacencyMap
  2302. 1307.48 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexGraph
  2303. 1307.48 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexAdjacencyIntMap
  2304. 1307.48 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexAdjacencyMap0
  2305. 1307.48 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexGraph0
  2306. 1307.48 s [algebraic-graphs] - Algebra.Graph.Class.D:R:VertexGraph1
  2307. 1307.48 s [algebraic-graphs] - Algebra.Graph.Relation.Transitive.D:R:VertexTransitiveRelation
  2308. 1307.48 s [algebraic-graphs] - Algebra.Graph.Relation.Reflexive.D:R:VertexReflexiveRelation
  2309. 1307.48 s [algebraic-graphs] - Algebra.Graph.Relation.Preorder.D:R:VertexPreorderRelation
  2310. 1307.48 s [algebraic-graphs] - Algebra.Graph.Example.Todo.D:R:VertexTodo
  2311. 1307.48 s [algebraic-graphs] Warning: Algebra.Graph.Relation.Transitive: could not find link destinations for:
  2312. 1307.48 s [algebraic-graphs] - Algebra.Graph.Relation.Transitive.D:R:VertexTransitiveRelation
  2313. 1307.48 s [algebraic-graphs] Warning: Algebra.Graph.Relation.Reflexive: could not find link destinations for:
  2314. 1307.48 s [algebraic-graphs] - Algebra.Graph.Relation.Reflexive.D:R:VertexReflexiveRelation
  2315. 1307.48 s [algebraic-graphs] Warning: Algebra.Graph.Relation.Preorder: could not find link destinations for:
  2316. 1307.48 s [algebraic-graphs] - Algebra.Graph.Relation.Preorder.D:R:VertexPreorderRelation
  2317. 1307.48 s [algebraic-graphs] Warning: Algebra.Graph.Example.Todo: could not find link destinations for:
  2318. 1307.48 s [algebraic-graphs] - Algebra.Graph.Example.Todo.D:R:VertexTodo
  2319. 1311.55 s [algebraic-graphs] Documentation created: dist/doc/html/algebraic-graphs/,
  2320. 1311.71 s [algebraic-graphs] dist/doc/html/algebraic-graphs/algebraic-graphs.txt
  2321. 1311.71 s [algebraic-graphs] Preprocessing test suite 'main' for algebraic-graphs-0.7...
  2322. 1311.71 s [algebraic-graphs] Phase: installPhase
  2323. 1311.71 s [algebraic-graphs] Installing library in /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/lib/ghc-9.10.2/lib/x86_64-linux-ghc-9.10.2-2a2a/algebraic-graphs-0.7-2cnKxGDkN2wAK5xC8AtO3Y
  2324. 1312.24 s [algebraic-graphs] Phase: fixupPhase
  2325. 1312.25 s [algebraic-graphs] shrinking RPATHs of ELF executables and libraries in /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7
  2326. 1312.27 s [algebraic-graphs] shrinking /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/lib/ghc-9.10.2/lib/x86_64-linux-ghc-9.10.2-2a2a/libHSalgebraic-graphs-0.7-2cnKxGDkN2wAK5xC8AtO3Y-ghc9.10.2.so
  2327. 1312.27 s [algebraic-graphs] checking for references to /build/ in /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7...
  2328. 1312.31 s [algebraic-graphs] patching script interpreter paths in /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7
  2329. 1312.31 s [algebraic-graphs] stripping (with command strip and flags -S -p) in /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/lib
  2330. 1312.56 s [algebraic-graphs] shrinking RPATHs of ELF executables and libraries in /nix/store/fi02f57m63sblrbp3bdby0bsch31gbxw-algebraic-graphs-0.7-doc
  2331. 1312.58 s [algebraic-graphs] checking for references to /build/ in /nix/store/fi02f57m63sblrbp3bdby0bsch31gbxw-algebraic-graphs-0.7-doc...
  2332. 1312.61 s [algebraic-graphs] patching script interpreter paths in /nix/store/fi02f57m63sblrbp3bdby0bsch31gbxw-algebraic-graphs-0.7-doc
  2333. 1312.75 s [algebraic-graphs:post-build] Uploading to cachix cache "sellout": /nix/store/fi02f57m63sblrbp3bdby0bsch31gbxw-algebraic-graphs-0.7-doc /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7
  2334. 1313.28 s [algebraic-graphs:post-build] Pushing 2 paths (70 are already present) using zstd to cache sellout ⏳
  2335. 1313.28 s [algebraic-graphs:post-build]
  2336. 1313.64 s [algebraic-graphs:post-build] Pushing /nix/store/fi02f57m63sblrbp3bdby0bsch31gbxw-algebraic-graphs-0.7-doc (10.41 MiB)
  2337. 1313.81 s [algebraic-graphs:post-build] Pushing /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7 (25.12 MiB)
  2338. 1315.02 s [algebraic-graphs:post-build]
  2339. 1315.02 s [algebraic-graphs:post-build] All done.
  2340. 1315.04 s [algebraic-graphs:post-build] Uploading to the NixCI cache: /nix/store/fi02f57m63sblrbp3bdby0bsch31gbxw-algebraic-graphs-0.7-doc /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7
  2341. 1315.08 s [algebraic-graphs:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
  2342. 1315.09 s [algebraic-graphs:post-build] copying 2 paths...
  2343. 1315.09 s [algebraic-graphs:post-build] copying path '/nix/store/fi02f57m63sblrbp3bdby0bsch31gbxw-algebraic-graphs-0.7-doc' to 'https://cache.nix-ci.com'...
  2344. 1316.26 s [algebraic-graphs:post-build] copying path '/nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7' to 'https://cache.nix-ci.com'...
  2345. 1321.80 s [algebraic-graphs:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
  2346. 1322.08 s [algebraic-graphs:post-build] copying 1 paths...
  2347. 1322.12 s [algebraic-graphs:post-build] copying path '/nix/store/vzy7xgpawcp3jbxm62ay0hj20a915lj3-algebraic-graphs-0.7.drv' to 'https://cache.nix-ci.com'...
  2348. 1322.32 s Progress: 36 of 40 built, 760 of 760 downloaded from cache
  2349. 1322.38 s Building /nix/store/7nxkmgxi1csw6vfqpvkm09wikn5r0pnh-ghc-9.10.2-with-packages.drv
  2350. 1322.43 s [ghc-9.10.2-with-packages] /nix/store/232s66j2s7bd7k2arsdzgsd4sa6m2mgw-doctest-0.24.2/nix-support:
  2351. 1322.44 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2352. 1322.44 s [ghc-9.10.2-with-packages] /nix/store/ryx95p02ix6ip1bjl2xmxi3989ii9ab2-ghc-compat-plugin-0.1.0.1/nix-support:
  2353. 1322.44 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2354. 1322.45 s [ghc-9.10.2-with-packages] /nix/store/3rc2jpr9b9ilwznszmkp8arlxdhs30sl-hedgehog-1.5/nix-support:
  2355. 1322.45 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2356. 1322.46 s [ghc-9.10.2-with-packages] /nix/store/hqc5jfvfhnpsdxl4308jphqzh5qc9igw-Cabal-3.12.1.0/nix-support:
  2357. 1322.46 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2358. 1322.49 s [ghc-9.10.2-with-packages] /nix/store/9w1cf8v0r6zwkkfaa4fqhj4p3hypm9vr-cabal-doctest-1.0.12/nix-support:
  2359. 1322.49 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2360. 1322.51 s [ghc-9.10.2-with-packages] /nix/store/l84w056b9ban397xn1ncc7qj8w2xipxs-temporary-1.3/nix-support:
  2361. 1322.51 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2362. 1322.51 s [ghc-9.10.2-with-packages] /nix/store/l84w056b9ban397xn1ncc7qj8w2xipxs-temporary-1.3/nix-support:
  2363. 1322.51 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2364. 1322.51 s [ghc-9.10.2-with-packages] /nix/store/nwv95v1nif7x1lckzapi83m2k980k1ij-ansi-terminal-1.1.3/nix-support:
  2365. 1322.51 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2366. 1322.52 s [ghc-9.10.2-with-packages] /nix/store/nwv95v1nif7x1lckzapi83m2k980k1ij-ansi-terminal-1.1.3/nix-support:
  2367. 1322.52 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2368. 1322.52 s [ghc-9.10.2-with-packages] /nix/store/29aflj1wdp5gcjhwfb16zmwdwzibcn2d-async-2.2.5/nix-support:
  2369. 1322.52 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2370. 1322.52 s [ghc-9.10.2-with-packages] /nix/store/29aflj1wdp5gcjhwfb16zmwdwzibcn2d-async-2.2.5/nix-support:
  2371. 1322.52 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2372. 1322.52 s [ghc-9.10.2-with-packages] /nix/store/0vbbwha84m80hay0dbi4zfwq9mjsc2y4-barbies-2.1.1.0/nix-support:
  2373. 1322.52 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2374. 1322.52 s [ghc-9.10.2-with-packages] /nix/store/0vbbwha84m80hay0dbi4zfwq9mjsc2y4-barbies-2.1.1.0/nix-support:
  2375. 1322.52 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2376. 1322.53 s [ghc-9.10.2-with-packages] /nix/store/77mgc4n83gmj8x7lh3nxii9w4igr7dm6-concurrent-output-1.10.21/nix-support:
  2377. 1322.53 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2378. 1322.53 s [ghc-9.10.2-with-packages] /nix/store/77mgc4n83gmj8x7lh3nxii9w4igr7dm6-concurrent-output-1.10.21/nix-support:
  2379. 1322.53 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2380. 1322.53 s [ghc-9.10.2-with-packages] /nix/store/cg8an3npdl5agqicyir711dgrljbwg73-lifted-async-0.10.2.7/nix-support:
  2381. 1322.53 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2382. 1322.53 s [ghc-9.10.2-with-packages] /nix/store/cg8an3npdl5agqicyir711dgrljbwg73-lifted-async-0.10.2.7/nix-support:
  2383. 1322.53 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2384. 1322.54 s [ghc-9.10.2-with-packages] /nix/store/kddghhigy5m7086mb4gxcyvy20qq18r7-mmorph-1.2.1/nix-support:
  2385. 1322.54 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2386. 1322.54 s [ghc-9.10.2-with-packages] /nix/store/kddghhigy5m7086mb4gxcyvy20qq18r7-mmorph-1.2.1/nix-support:
  2387. 1322.54 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2388. 1322.54 s [ghc-9.10.2-with-packages] /nix/store/xxbxbxdb8li2n14y9j23fnds42y4lk47-monad-control-1.0.3.1/nix-support:
  2389. 1322.54 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2390. 1322.54 s [ghc-9.10.2-with-packages] /nix/store/xxbxbxdb8li2n14y9j23fnds42y4lk47-monad-control-1.0.3.1/nix-support:
  2391. 1322.54 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2392. 1322.54 s [ghc-9.10.2-with-packages] /nix/store/0dzp8kzymmp2yrmxwyiq34h9df8r1b2s-pretty-show-1.10/nix-support:
  2393. 1322.54 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2394. 1322.54 s [ghc-9.10.2-with-packages] /nix/store/0dzp8kzymmp2yrmxwyiq34h9df8r1b2s-pretty-show-1.10/nix-support:
  2395. 1322.54 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2396. 1322.54 s [ghc-9.10.2-with-packages] /nix/store/xj37z083slbwgls55s5mi78ps4sfw87z-primitive-0.9.1.0/nix-support:
  2397. 1322.55 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2398. 1322.55 s [ghc-9.10.2-with-packages] /nix/store/xj37z083slbwgls55s5mi78ps4sfw87z-primitive-0.9.1.0/nix-support:
  2399. 1322.55 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2400. 1322.55 s [ghc-9.10.2-with-packages] /nix/store/ak54mv7nbq0yqk4y8dbjn209lf3hbxcg-random-1.2.1.3/nix-support:
  2401. 1322.55 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2402. 1322.55 s [ghc-9.10.2-with-packages] /nix/store/ak54mv7nbq0yqk4y8dbjn209lf3hbxcg-random-1.2.1.3/nix-support:
  2403. 1322.55 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2404. 1322.55 s [ghc-9.10.2-with-packages] /nix/store/3yy3n64m7881m8jgbr9pdrqpk6jbyi4y-resourcet-1.3.0/nix-support:
  2405. 1322.55 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2406. 1322.55 s [ghc-9.10.2-with-packages] /nix/store/3yy3n64m7881m8jgbr9pdrqpk6jbyi4y-resourcet-1.3.0/nix-support:
  2407. 1322.56 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2408. 1322.56 s [ghc-9.10.2-with-packages] /nix/store/pcmsk19l80qn2qxgn2jdika662ilgkjp-safe-exceptions-0.1.7.4/nix-support:
  2409. 1322.56 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2410. 1322.56 s [ghc-9.10.2-with-packages] /nix/store/pcmsk19l80qn2qxgn2jdika662ilgkjp-safe-exceptions-0.1.7.4/nix-support:
  2411. 1322.56 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2412. 1322.56 s [ghc-9.10.2-with-packages] /nix/store/wxs4wb059ihrh7vvfh9n2qw7a8nji717-transformers-base-0.4.6/nix-support:
  2413. 1322.56 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2414. 1322.56 s [ghc-9.10.2-with-packages] /nix/store/wxs4wb059ihrh7vvfh9n2qw7a8nji717-transformers-base-0.4.6/nix-support:
  2415. 1322.56 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2416. 1322.56 s [ghc-9.10.2-with-packages] /nix/store/6nc1n6zf80kf6q9k1n3afvwlj9sm63ij-wl-pprint-annotated-0.1.0.1/nix-support:
  2417. 1322.56 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2418. 1322.56 s [ghc-9.10.2-with-packages] /nix/store/6nc1n6zf80kf6q9k1n3afvwlj9sm63ij-wl-pprint-annotated-0.1.0.1/nix-support:
  2419. 1322.56 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2420. 1322.56 s [ghc-9.10.2-with-packages] /nix/store/k4qrcbnb573mjfa407qqfw3dbmgakrx0-Cabal-syntax-3.12.1.0/nix-support:
  2421. 1322.56 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2422. 1322.58 s [ghc-9.10.2-with-packages] /nix/store/k4qrcbnb573mjfa407qqfw3dbmgakrx0-Cabal-syntax-3.12.1.0/nix-support:
  2423. 1322.58 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2424. 1322.59 s [ghc-9.10.2-with-packages] /nix/store/mxqrrdfam0hvcszfxb53jd0n8bgh7cmm-ansi-terminal-types-1.1.3/nix-support:
  2425. 1322.59 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2426. 1322.59 s [ghc-9.10.2-with-packages] /nix/store/mxqrrdfam0hvcszfxb53jd0n8bgh7cmm-ansi-terminal-types-1.1.3/nix-support:
  2427. 1322.59 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2428. 1322.60 s [ghc-9.10.2-with-packages] /nix/store/2nj2xri6lv2rxhmsmfh3lfrlvmlgkss6-hashable-1.5.0.0/nix-support:
  2429. 1322.60 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2430. 1322.60 s [ghc-9.10.2-with-packages] /nix/store/2nj2xri6lv2rxhmsmfh3lfrlvmlgkss6-hashable-1.5.0.0/nix-support:
  2431. 1322.60 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2432. 1322.60 s [ghc-9.10.2-with-packages] /nix/store/rmqkhdi6g0wcw3q26kc76iipzkrihyc8-distributive-0.6.2.1/nix-support:
  2433. 1322.60 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2434. 1322.60 s [ghc-9.10.2-with-packages] /nix/store/rmqkhdi6g0wcw3q26kc76iipzkrihyc8-distributive-0.6.2.1/nix-support:
  2435. 1322.60 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2436. 1322.61 s [ghc-9.10.2-with-packages] /nix/store/7bvjbbbp33z63jxabs6gwa912yzi0gca-constraints-0.14.2/nix-support:
  2437. 1322.61 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2438. 1322.61 s [ghc-9.10.2-with-packages] /nix/store/7bvjbbbp33z63jxabs6gwa912yzi0gca-constraints-0.14.2/nix-support:
  2439. 1322.61 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2440. 1322.61 s [ghc-9.10.2-with-packages] /nix/store/6w3n182isbk127fip51i5bx2q0zrdlhg-lifted-base-0.2.3.12/nix-support:
  2441. 1322.61 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2442. 1322.61 s [ghc-9.10.2-with-packages] /nix/store/6w3n182isbk127fip51i5bx2q0zrdlhg-lifted-base-0.2.3.12/nix-support:
  2443. 1322.61 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2444. 1322.62 s [ghc-9.10.2-with-packages] /nix/store/0c3lnk6fsdwlky55d37hlnswg64jv2jq-transformers-compat-0.7.2/nix-support:
  2445. 1322.62 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2446. 1322.62 s [ghc-9.10.2-with-packages] /nix/store/0c3lnk6fsdwlky55d37hlnswg64jv2jq-transformers-compat-0.7.2/nix-support:
  2447. 1322.62 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2448. 1322.62 s [ghc-9.10.2-with-packages] /nix/store/8ffzz1bjhi9ig191pzx0qjyhaq10i0py-splitmix-0.1.3.1/nix-support:
  2449. 1322.62 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2450. 1322.62 s [ghc-9.10.2-with-packages] /nix/store/8ffzz1bjhi9ig191pzx0qjyhaq10i0py-splitmix-0.1.3.1/nix-support:
  2451. 1322.62 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2452. 1322.63 s [ghc-9.10.2-with-packages] /nix/store/6s9z5l4ypcbr82x2nla29kcccynh3sra-unliftio-core-0.2.1.0/nix-support:
  2453. 1322.63 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2454. 1322.63 s [ghc-9.10.2-with-packages] /nix/store/6s9z5l4ypcbr82x2nla29kcccynh3sra-unliftio-core-0.2.1.0/nix-support:
  2455. 1322.63 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2456. 1322.63 s [ghc-9.10.2-with-packages] /nix/store/9k0nr8mx63vhmr0rvhhd6p43ny1qlq9s-base-orphans-0.9.3/nix-support:
  2457. 1322.63 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2458. 1322.63 s [ghc-9.10.2-with-packages] /nix/store/9k0nr8mx63vhmr0rvhhd6p43ny1qlq9s-base-orphans-0.9.3/nix-support:
  2459. 1322.63 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2460. 1322.63 s [ghc-9.10.2-with-packages] /nix/store/gsmqw739c587snr9nch2fpncys3x2v08-tagged-0.8.9/nix-support:
  2461. 1322.63 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2462. 1322.63 s [ghc-9.10.2-with-packages] /nix/store/gsmqw739c587snr9nch2fpncys3x2v08-tagged-0.8.9/nix-support:
  2463. 1322.63 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2464. 1322.63 s [ghc-9.10.2-with-packages] /nix/store/g1av89s12lbcaxmw49xahr0aml348hdk-boring-0.2.2/nix-support:
  2465. 1322.63 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2466. 1322.64 s [ghc-9.10.2-with-packages] /nix/store/g1av89s12lbcaxmw49xahr0aml348hdk-boring-0.2.2/nix-support:
  2467. 1322.64 s [ghc-9.10.2-with-packages] propagated-build-inputs: Keeping existing link to /nix/store/js8lkrdzpjhgs01raawx30idcikkp86x-algebraic-graphs-0.7/nix-support/propagated-build-inputs
  2468. 1323.33 s [ghc-9.10.2-with-packages] Warning: include-dirs: /nix/store/xy3v6qa0326bgwv290pafrdp9fsr02pl-ghc-9.10.2-with-packages/lib/ghc-9.10.2/lib/../lib/x86_64-linux-ghc-9.10.2/directory-1.3.8.5-159c/include doesn't exist or isn't a directory
  2469. 1324.48 s [ghc-9.10.2-with-packages:post-build] Uploading to cachix cache "sellout": /nix/store/xy3v6qa0326bgwv290pafrdp9fsr02pl-ghc-9.10.2-with-packages
  2470. 1324.95 s [ghc-9.10.2-with-packages:post-build] Pushing 1 paths (152 are already present) using zstd to cache sellout ⏳
  2471. 1324.95 s [ghc-9.10.2-with-packages:post-build]
  2472. 1325.31 s [ghc-9.10.2-with-packages:post-build] Pushing /nix/store/xy3v6qa0326bgwv290pafrdp9fsr02pl-ghc-9.10.2-with-packages (5.54 MiB)
  2473. 1327.25 s [ghc-9.10.2-with-packages:post-build]
  2474. 1327.33 s [ghc-9.10.2-with-packages:post-build] All done.
  2475. 1327.33 s [ghc-9.10.2-with-packages:post-build] Uploading to the NixCI cache: /nix/store/xy3v6qa0326bgwv290pafrdp9fsr02pl-ghc-9.10.2-with-packages
  2476. 1327.33 s [ghc-9.10.2-with-packages:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
  2477. 1327.55 s [ghc-9.10.2-with-packages:post-build] copying 1 paths...
  2478. 1327.55 s [ghc-9.10.2-with-packages:post-build] copying path '/nix/store/xy3v6qa0326bgwv290pafrdp9fsr02pl-ghc-9.10.2-with-packages' to 'https://cache.nix-ci.com'...
  2479. 1328.79 s [ghc-9.10.2-with-packages:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
  2480. 1329.03 s [ghc-9.10.2-with-packages:post-build] copying 1 paths...
  2481. 1329.03 s [ghc-9.10.2-with-packages:post-build] copying path '/nix/store/7nxkmgxi1csw6vfqpvkm09wikn5r0pnh-ghc-9.10.2-with-packages.drv' to 'https://cache.nix-ci.com'...
  2482. 1329.27 s Progress: 37 of 39 built, 760 of 760 downloaded from cache
  2483. 1329.37 s Building /nix/store/sqr2s21ysb2fw5ca37hfa7syp7a6g9dr-ghc-shell-for-packages-0.drv
  2484. 1330.22 s [ghc-shell-for-packages:post-build] Uploading to cachix cache "sellout": /nix/store/l8zfjcrz6p6z4cbrpyj3ry4iqigx0asi-ghc-shell-for-packages-0
  2485. 1330.87 s [ghc-shell-for-packages:post-build] Pushing 1 paths (795 are already present) using zstd to cache sellout ⏳
  2486. 1330.87 s [ghc-shell-for-packages:post-build]
  2487. 1331.25 s [ghc-shell-for-packages:post-build] Pushing /nix/store/l8zfjcrz6p6z4cbrpyj3ry4iqigx0asi-ghc-shell-for-packages-0 (336.00 B)
  2488. 1332.52 s [ghc-shell-for-packages:post-build]
  2489. 1332.56 s [ghc-shell-for-packages:post-build] All done.
  2490. 1332.56 s [ghc-shell-for-packages:post-build] Uploading to the NixCI cache: /nix/store/l8zfjcrz6p6z4cbrpyj3ry4iqigx0asi-ghc-shell-for-packages-0
  2491. 1332.58 s [ghc-shell-for-packages:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
  2492. 1332.64 s [ghc-shell-for-packages:post-build] copying 1 paths...
  2493. 1332.64 s [ghc-shell-for-packages:post-build] copying path '/nix/store/l8zfjcrz6p6z4cbrpyj3ry4iqigx0asi-ghc-shell-for-packages-0' to 'https://cache.nix-ci.com'...
  2494. 1333.00 s [ghc-shell-for-packages:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
  2495. 1333.71 s [ghc-shell-for-packages:post-build] copying 1 paths...
  2496. 1333.71 s [ghc-shell-for-packages:post-build] copying path '/nix/store/sqr2s21ysb2fw5ca37hfa7syp7a6g9dr-ghc-shell-for-packages-0.drv' to 'https://cache.nix-ci.com'...
  2497. 1333.94 s Progress: 38 of 39 built, 760 of 760 downloaded from cache
  2498. 1333.95 s Progress: 39 of 39 built, 760 of 760 downloaded from cache
  2499. 1333.95 s /nix/store/l8zfjcrz6p6z4cbrpyj3ry4iqigx0asi-ghc-shell-for-packages-0
  2500. 1334.02 s Build succeeded.