Thm* A:AdjList, x,y:Vertices(adjl-graph(A)). x =A= y  | [eq_adjl_wf] |
Thm* t:AdjMatrix. t.adj t.size  t.size   | [adjm_adj_wf] |
Thm* For any graph
the_obj:GraphObject(the_graph), P,Q:(V  ). ( x:V. P(x)  Q(x))  ( x:V. P(x) & Q(x))  vertex-count(the_obj;x.P(x)) < vertex-count(the_obj;x.Q(x)) | [vertex-count-less] |
Thm* For any graph
the_obj:GraphObject(the_graph), P,Q:(V  ). ( x:V. P(x)  Q(x))  vertex-count(the_obj;x.P(x)) vertex-count(the_obj;x.Q(x)) | [vertex-count-le] |
Thm* For any graph
the_obj:GraphObject(the_graph), P:(V  ). no_repeats(V;vertex-subset(the_obj;x.P(x))) & ( x:V. (x vertex-subset(the_obj;x.P(x)))  P(x)) | [vertex-subset-properties] |
Thm* For any graph
the_obj:GraphObject(the_graph), P:(V  ). vertex-subset(the_obj;x.P(x)) V List | [vertex-subset_wf] |
Thm* For any graph
eq:(V V  ), eqw:( x,y:V. eq(x,y)  x = y), eacc:( T:Type. (T V T) T V T), eaccw:( T:Type, s:T, x:V, f:(T V T). L:V List. ( y:V. x-the_graph- > y  (y L)) & eacc(f,s,x) = list_accum(s',x'.f(s',x');s;L)), vacc:( T:Type. (T V T) T T), vaccw:( T:Type, s:T, f:(T V T). L:V List. no_repeats(V;L) & ( y:V. (y L)) & vacc(f,s) = list_accum(s',x'.f(s',x');s;L)), other:Top. mkgraphobj(eq, eqw, eacc, eaccw, vacc, vaccw, other) GraphObject(the_graph) | [mkgraphobj_wf] |
Thm* For any graph
t:GraphObject(the_graph). t.eq V V   | [gro_eq_wf] |
Def AdjMatrix == size:  size  size   | [adjmatrix] |
Def GraphObject(the_graph) == eq:Vertices(the_graph) Vertices(the_graph)   ( x,y:Vertices(the_graph). (eq(x,y))  x = y) (eacc:( T:Type. (T Vertices(the_graph) T) T Vertices(the_graph) T) ( T:Type, s:T, x:Vertices(the_graph), f:(T Vertices(the_graph) T). L:Vertices(the_graph) List. ( y:Vertices(the_graph). x-the_graph- > y  (y L)) & eacc(f,s,x) = list_accum(s',x'.f(s',x');s;L)) (vacc:( T:Type. (T Vertices(the_graph) T) T T) ( T:Type, s:T, f:(T Vertices(the_graph) T). L:Vertices(the_graph) List. no_repeats(Vertices(the_graph);L) & ( y:Vertices(the_graph). (y L)) & vacc(f,s) = list_accum(s',x'.f(s',x');s;L)) Top)) | [graphobj] |