Îõ³h$!! -      !"#$%&'()*+, Safe-Inferred '(./ÉÖ× fcf-graphsKeysSetExample6:kind! (Eval (KeysSet ('MapC ['(5, "f"), '(3, "o")])))<(Eval (KeysSet ('MapC ['(5, "f"), '(3, "o")]))) :: S.Set Nat= 'S.Set '[5, 3] fcf-graphsToSndExample,:kind! (Eval (ToSnd Length ["f", "o", "o"]))8(Eval (ToSnd Length ["f", "o", "o"])) :: ([Symbol], Nat)= '( '["f", "o", "o"], 3) fcf-graphsToFstExample,:kind! (Eval (ToFst Length ["f", "o", "o"]))8(Eval (ToFst Length ["f", "o", "o"])) :: (Nat, [Symbol])= '(3, '["f", "o", "o"]) fcf-graphsFromSetExample0:kind! (Eval (FromSet ((+) 1) ('S.Set [1,2,3])))9(Eval (FromSet ((+) 1) ('S.Set [1,2,3]))) :: MapC Nat Nat%= 'MapC '[ '(1, 2), '(2, 3), '(3, 4)] fcf-graphs UnionsWithExampleŒ:kind! (Eval (UnionsWith (++) ['MapC ['(5, '["a"]), '(3, '["b"])], 'MapC ['(5, '["A"]), '(7, '["C"])], 'MapC ['(5, '["e"]), '(7, '["o"])]]))(Eval (UnionsWith (++) ['MapC ['(5, '["a"]), '(3, '["b"])], 'MapC ['(5, '["A"]), '(7, '["C"])], 'MapC ['(5, '["e"]), '(7, '["o"])]])) :: MapCŽ Nat“ [Symbol]Ã= 'MapC '[ '(7, '["C", "o"]), '(5, '["a", "A", "e"]), '(3, '["b"])] fcf-graphs UnionWithExample†:kind! (Eval (UnionWith (++) (Eval (MapC.FromList ['(5, '["a"]), '(3, '["b"])])) (Eval (MapC.FromList ['(5, '["A"]), '(7, '["C"])]))))‡(Eval (UnionWith (++) (Eval (MapC.FromList ['(5, '["a"]), '(3, '["b"])])) (Eval (MapC.FromList ['(5, '["A"]), '(7, '["C"])])))) :: MapCˆ Nat [Symbol]9= 'MapC '[ '(5, '["a", "A"]), '(7, '["C"]), '(3, '["b"])] fcf-graphs AdjacencyListExample/:kind! (Eval (AdjacencyList (Eval (Edge 1 2)))):(Eval (AdjacencyList (Eval (Edge 1 2)))) :: [(Nat, [Nat])]= '[ '(1, '[2]), '(2, '[])] fcf-graphsEdgeSetExample):kind! (Eval (EdgeSet (Eval (Edge 1 2))))6(Eval (EdgeSet (Eval (Edge 1 2)))) :: S.Set (Nat, Nat)= 'S.Set '[ '(1, 2)]  fcf-graphs VertexSetExample+:kind! (Eval (VertexSet (Eval (Edge 1 2))))1(Eval (VertexSet (Eval (Edge 1 2)))) :: S.Set Nat= 'S.Set '[1, 2]  fcf-graphsEdgeListExampleð:kind! (Eval (EdgeList (Eval (Connect (Eval (Vertex 1)) (Eval (Connect (Eval (Vertex 2)) (Eval (Vertex 3))))))))ó(Eval (EdgeList (Eval (Connect (Eval (Vertex 1)) (Eval (Connect (Eval (Vertex 2)) (Eval (Vertex 3)))))))) :: [(Nat,ô Nat)]= '[ '(1, 2), '(1, 3), '(2, 3)]  fcf-graphs VertexListExample,:kind! (Eval (VertexList (Eval (Edge 1 2)))).(Eval (VertexList (Eval (Edge 1 2)))) :: [Nat] = '[1, 2]  fcf-graphs EdgeCountExample+:kind! (Eval (EdgeCount (Eval (Edge 1 2))))+(Eval (EdgeCount (Eval (Edge 1 2)))) :: Nat= 1 fcf-graphs VertexCountExample-:kind! (Eval (VertexCount (Eval (Edge 1 2))))-(Eval (VertexCount (Eval (Edge 1 2)))) :: Nat= 2 fcf-graphsHasEdgeExample-:kind! (Eval (HasEdge 1 2 (Eval (Edge 1 2)))).(Eval (HasEdge 1 2 (Eval (Edge 1 2)))) :: Bool= 'True fcf-graphs HasVertexExample-:kind! (Eval (HasVertex 1 (Eval (Vertex 1)))).(Eval (HasVertex 1 (Eval (Vertex 1)))) :: Bool= 'True fcf-graphsIsEmptyExample):kind! (Eval (IsEmpty ('AM ('MapC '[]))))*(Eval (IsEmpty ('AM ('MapC '[])))) :: Bool= 'True fcf-graphsConnectExample;:kind! (Eval (Connect (Eval (Vertex 1)) (Eval (Vertex 2))))Ä(Eval (Connect (Eval (Vertex 1)) (Eval (Vertex 2)))) :: AdjacencyMap= Nat5= 'AM ('MapC '[ '(1, 'S.Set '[2]), '(2, 'S.Set '[])]) fcf-graphsOverlayExample;:kind! (Eval (Overlay (Eval (Vertex 1)) (Eval (Vertex 2))))Ä(Eval (Overlay (Eval (Vertex 1)) (Eval (Vertex 2)))) :: AdjacencyMap= Nat4= 'AM ('MapC '[ '(2, 'S.Set '[]), '(1, 'S.Set '[])]) fcf-graphsEdgeExample,:kind! (Eval (Edge 1 2) :: AdjacencyMap Nat)9(Eval (Edge 1 2) :: AdjacencyMap Nat) :: AdjacencyMap Nat5= 'AM ('MapC '[ '(1, 'S.Set '[2]), '(2, 'S.Set '[])]) fcf-graphsVertexExample,:kind! (Eval (Vertex 1) :: AdjacencyMap Nat)9(Eval (Vertex 1) :: AdjacencyMap Nat) :: AdjacencyMap Nat"= 'AM ('MapC '[ '(1, 'S.Set '[])]) fcf-graphsEmptyExample':kind! (Eval Empty :: AdjacencyMap Nat)4(Eval Empty :: AdjacencyMap Nat) :: AdjacencyMap Nat= 'AM ('MapC '[])   Safe-Inferred '(./ÉÖ×»  fcf-graphsSimplifyExampleÑ:kind! Eval (Simplify =<< Overlay ('Vertex 1) ('Overlay ('Vertex 2) ('Vertex 1)))ÓEval (Simplify =<< Overlay ('Vertex 1) ('Overlay ('Vertex 2) ('Vertex 1))) :: GraphÓ Nat"= 'Overlay ('Vertex 2) ('Vertex 1) fcf-graphs VertexSetExampleÒ:kind! Eval (VertexSet =<< Connect ('Overlay ('Vertex 1) ('Vertex 2)) ('Vertex 3))ÔEval (VertexSet =<< Connect ('Overlay ('Vertex 1) ('Vertex 2)) ('Vertex 3)) :: S.SetÔ Nat= 'S.Set '[3, 2, 1] fcf-graphs HasVertexExampleÔ:kind! Eval (HasVertex 3 =<< Connect ('Overlay ('Vertex 1) ('Vertex 2)) ('Vertex 3))ÕEval (HasVertex 3 =<< Connect ('Overlay ('Vertex 1) ('Vertex 2)) ('Vertex 3)) :: Bool= 'True fcf-graphsSizeExampleÍ:kind! Eval (Size =<< Connect ('Overlay ('Vertex 1) ('Vertex 2)) ('Vertex 3))ÍEval (Size =<< Connect ('Overlay ('Vertex 1) ('Vertex 2)) ('Vertex 3)) :: Nat= 3 fcf-graphsEqRExample5:kind! Eval (EqR (Eval (Edge 1 3)) (Eval (Edge 1 2)))6Eval (EqR (Eval (Edge 1 3)) (Eval (Edge 1 2))) :: Bool= 'False  fcf-graphsToAdjacencyMapExample.:kind! Eval (ToAdjacencyMap (Eval (Edge 1 2)))>Eval (ToAdjacencyMap (Eval (Edge 1 2))) :: AM.AdjacencyMap Nat= 'AM.AMÁ ('Fcf.Data.MapC.MapC '[ '(1, 'S.Set '[2]), '(2, 'S.Set '[])])! fcf-graphsFoldgExampleä:kind! Eval (FoldG (Pure 0) Pure (+) (+) =<< Connect ('Overlay ('Vertex 1) ('Vertex 2)) ('Vertex 3))äEval (FoldG (Pure 0) Pure (+) (+) =<< Connect ('Overlay ('Vertex 1) ('Vertex 2)) ('Vertex 3)) :: Nat= 6" fcf-graphsMapExampleÔ:kind! Eval (Map ((+) 1) =<< Connect ('Overlay ('Vertex 1) ('Vertex 2)) ('Vertex 3))ÖEval (Map ((+) 1) =<< Connect ('Overlay ('Vertex 1) ('Vertex 2)) ('Vertex 3)) :: GraphÖ Nat9= 'Connect ('Overlay ('Vertex 2) ('Vertex 3)) ('Vertex 4)# fcf-graphsConnectExample<:kind! (Eval (Connect ('Vertex 1) ('Vertex 2)) :: Graph Nat)Â(Eval (Connect ('Vertex 1) ('Vertex 2)) :: Graph Nat) :: Graph Nat"= 'Connect ('Vertex 1) ('Vertex 2)$ fcf-graphsOverlayExample<:kind! (Eval (Overlay ('Vertex 1) ('Vertex 2)) :: Graph Nat)Â(Eval (Overlay ('Vertex 1) ('Vertex 2)) :: Graph Nat) :: Graph Nat"= 'Overlay ('Vertex 1) ('Vertex 2)% fcf-graphsEdgeExample%:kind! (Eval (Edge 1 2) :: Graph Nat)+(Eval (Edge 1 2) :: Graph Nat) :: Graph Nat"= 'Connect ('Vertex 1) ('Vertex 2)& fcf-graphsVertexExample%:kind! (Eval (Vertex 1) :: Graph Nat)+(Eval (Vertex 1) :: Graph Nat) :: Graph Nat = 'Vertex 1' fcf-graphsEmptyExample :kind! (Eval Empty :: Graph Nat)&(Eval Empty :: Graph Nat) :: Graph Nat= 'Empty !"#$%&'(,+*)(,+*)'&%$#"!  Safe-Inferred -./012345       !"#$%&'()*+,-.)fcf-graphs-0.0.1.0-JlPKjSZONO8Hvq7mxPHn1gFcf.Data.AdjacencyMapFcf.Data.GraphPaths_fcf_graphsKeysSetToSndToFstFromSet UnionsWithUCombW UnionWith AdjacencyListEdgeSet VertexSetECombEdgeList VertexList EdgeCount VertexCountHasEdge HasVertexIsEmptyConnectOverlayEdgeVertexEmpty AdjacencyMapAMSimple'SimpleSimplifySizeEqRToAdjacencyMapFoldGMapGraphversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName