简介
数据 图表 一 来自Undirected :: 订单 a=> 图表 a-> 图表 一 到未定向 :: 图表 a-> 图表 一 空的 :: 图表 一 顶点 ::a-> 图表 一 边缘 ::a->a-> 图表 一 覆盖 :: 图表 a-> 图表 a-> 图表 一 连接 :: 图表 a-> 图表 a-> 图表 一 顶点 ::[a]-> 图表 一 边缘 ::[(a,a)]-> 图表 一 覆盖层 :: [ 图表 a] -> 图表 一 连接 :: [ 图表 a] -> 图表 一 折叠 ::b->(a->b)->(b->b->b)->(b->b->b)-> 图表 a->b 是SubgraphOf :: 订单 a=> 图表 a-> 图表 a-> 布尔 到关系 :: 订单 a=> 图表 a-> 关系 一 栈空 :: 图表 a-> 布尔 大小 :: 图表 a-> 国际 hasVertex公司 :: 等式 a=>a-> 图表 a-> 布尔 hasEdge公司 :: 等式 a=>a->a-> 图表 a-> 布尔 顶点计数 :: 订单 a=> 图表 a-> 国际 边缘计数 :: 订单 a=> 图表 a-> 国际 顶点列表 :: 订单 a=> 图表 a->[a] 边缘列表 :: 订单 a=> 图表 a->[(a,a)] 顶点集 :: 订单 a=> 图表 a-> 设置 一 边缘设置 :: 订单 a=> 图表 a-> 设置 (a、a) 邻接列表 :: 订单 a=> 图表 a->[(a,[a])] 邻居 :: 订单 a=>a-> 图表 a-> 设置 一 路径 ::[a]-> 图表 一 电路 ::[a]-> 图表 一 集团 ::[a]-> 图表 一 二液化 ::[a]->[a]-> 图表 一 明星 ::a->[a]-> 图表 一 星星 ::[(a,[a])]-> 图表 一 树 :: 树 a-> 图表 一 森林 :: 森林 a-> 图表 一 移除顶点 :: 等式 a=>a-> 图表 a-> 图表 一 删除边缘 :: 等式 a=>a->a-> 图表 a-> 图表 一 替换顶点 :: 等式 a=>a->a-> 图表 a-> 图表 一 合并顶点 ::(a-> 布尔 )->a-> 图表 a-> 图表 一 诱导 ::(a-> 布尔 ) -> 图表 a-> 图表 一 诱导Just :: 图表 ( 也许 吧 a) -> 图表 一 补充 :: 订单 a=> 图表 a-> 图表 一
图的代数数据类型
0 ==
顶点 0 1 + 2 ==
覆盖 (
顶点 1) (
顶点 2) 1 * 2 ==
连接 (
顶点 1) (
顶点 2) 1 + 2 * 3 ==
覆盖 (
顶点 1) (
连接 (
顶点 2) (
顶点 3)) 1 * (2 + 3) ==
连接 (
顶点 1) (
覆盖 (
顶点 2) (
顶点 3))
覆盖 是可交换和关联的: x+y==y+x x+(y+z)==(x+y)+z x*空==x 空*x==x x*y==y*x x*(y*z)==(x*y)*z x*(y+z)==x*y+x*z (x+y)*z==x*z+y*z 连接 可以分解为: x*y*z==x*y+x*z+y*z
n个==
顶点计数 克 米==
边缘计数 克 秒==
大小 克
顶点计数
空的 == 0
大小
空的 == 1
顶点计数 (
顶点 x) ==1
大小 (
顶点 x) ==1
顶点计数 (
空的 +
空的 ) == 0
大小 (
空的 +
空的 ) == 2
比较顶点数。 如果出现平局,请继续。 比较顶点集。 如果出现平局,请继续。 比较边的数量。 如果出现平局,请继续。 比较边缘集。
顶点 1 <
顶点 2
顶点 3 <
边缘 1 2
顶点 1 <
边缘 1 1
边缘 1 1 <
边缘 1 2
边缘 1 2 <
边缘 1 1 +
边缘 2 2
边缘 1 2 <
边缘 1 3
边缘 1 2 ==
边缘 2 1
是SubgraphOf x y==>x<=y
空的 <=x x<=x+y x+y<=x*y
实例
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
基本图构造基元
栈空 (顶点x)==假
hasVertex公司 x(顶点y)==(x==y)
顶点计数 (顶点x)==1
边缘计数 (顶点x)==0
大小 (顶点x)==1
连接 x年==
连接 年x
栈空 (连接x y)==
栈空 x个&&
栈空 年
hasVertex公司 z(连接x y)==
hasVertex公司 z x轴||
hasVertex公司 z y(z y)
顶点计数 (连接x y)>=
顶点计数 x个
顶点计数 (连接x y)<=
顶点计数 x个+
顶点计数 年
边缘计数 (连接x y)>=
边缘计数 x个
边缘计数 (连接x y)>=
边缘计数 年
边缘计数 (连接x y)>=
顶点计数 x个*
顶点计数 年
边缘计数 (连接x y)>=
顶点计数 x个*
顶点计数 年
div公司 2
大小 (连接x y)==
大小 x个+
大小 年
顶点计数 (连接12)==2
边缘计数 (连接12)==1
图形折叠
图上的关系
图形属性
标准图族
图形转换
诱导(
常数 真)x==x 诱导(
常数 假)x==
空的 诱导(/=x)==
移除顶点 x个 诱导p。 诱导q==诱导(\x->px&&qx)
是SubgraphOf (诱导px)x==真