You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
and"\<And>x. isin X x \<Longrightarrow> set_invar (n x)"\<comment>\<open>Every neighborhood satisfies the invariants.\<close>
584
625
and"\<And>x. isin X x \<Longrightarrow> \<exists>y. isin (n x) y"\<comment>\<open>Every neighborhood is non-empty.\<close>
585
-
and"\<And>x y. isin (n x) y \<Longrightarrow> isin X y"\<comment>\<open>Every neighborhood can only be a subset of \<open>X\<close>.\<close>
626
+
and"\<And>x y. isin X x \<Longrightarrow> isin (n x) y \<Longrightarrow> isin X y"\<comment>\<open>Every neighborhood can only be a subset of \<open>X\<close>.\<close>
586
627
and"isin (\<N> (graph_of_vertices n X) u) v"
587
628
shows"isin X u"
588
629
usingassmsset_specsgraph_of_vertices_neighborhoodby(cases"isin X u")auto
and"\<And>x. isin X x \<Longrightarrow> set_invar (n x)"\<comment>\<open>Every neighborhood satisfies the invariants.\<close>
593
634
and"\<And>x. isin X x \<Longrightarrow> \<exists>y. isin (n x) y"\<comment>\<open>Every neighborhood is non-empty.\<close>
594
-
and"\<And>x y. isin (n x) y \<Longrightarrow> isin X y"\<comment>\<open>Every neighborhood can only be a subset of \<open>X\<close>.\<close>
635
+
and"\<And>x y. isin X x \<Longrightarrow> isin (n x) y \<Longrightarrow> isin X y"\<comment>\<open>Every neighborhood can only be a subset of \<open>X\<close>.\<close>
and"\<And>x. isin X x \<Longrightarrow> set_invar (n x)"\<comment>\<open>Every neighborhood satisfies the invariants.\<close>
607
648
and"\<And>x. isin X x \<Longrightarrow> \<exists>y. isin (n x) y"\<comment>\<open>Every neighborhood is non-empty.\<close>
608
-
and"\<And>x y. isin (n x) y \<Longrightarrow> isin X y"\<comment>\<open>Every neighborhood can only be a subset of \<open>X\<close>.\<close>
649
+
and"\<And>x y. isin X x \<Longrightarrow> isin (n x) y \<Longrightarrow> isin X y"\<comment>\<open>Every neighborhood can only be a subset of \<open>X\<close>.\<close>
609
650
shows"vertices (graph_of_vertices n X) = set X"(is"vertices ?G\<^sub>X = set X")
and"\<And>x. isin X x \<Longrightarrow> set_invar (n x)"\<comment>\<open>Every neighborhood satisfies the invariants.\<close>
633
674
and"\<And>x. isin X x \<Longrightarrow> \<exists>y. isin (n x) y"\<comment>\<open>Every neighborhood is non-empty.\<close>
634
-
and"\<And>x y. isin (n x) y \<Longrightarrow> isin X y"\<comment>\<open>Every neighborhood can only be a subset of \<open>X\<close>.\<close>
675
+
and"\<And>x y. isin X x \<Longrightarrow> isin (n x) y \<Longrightarrow> isin X y"\<comment>\<open>Every neighborhood can only be a subset of \<open>X\<close>.\<close>
and"\<And>x. isin X x \<Longrightarrow> set_invar (n x)"\<comment>\<open>Every neighborhood satisfies the invariants.\<close>
641
682
and"\<And>x. isin X x \<Longrightarrow> \<exists>y. isin (n x) y"\<comment>\<open>Every neighborhood is non-empty.\<close>
642
-
and"\<And>x y. isin (n x) y \<Longrightarrow> isin X y"\<comment>\<open>Every neighborhood can only be a subset of \<open>X\<close>.\<close>
683
+
and"\<And>x y. isin X x \<Longrightarrow> isin (n x) y \<Longrightarrow> isin X y"\<comment>\<open>Every neighborhood can only be a subset of \<open>X\<close>.\<close>
643
684
\<comment>\<open>The following assumptions are needed to obtain a valid undirected graph.\<close>
644
-
and"\<And>x. \<not> isin (n x) x"\<comment>\<open>The neighborhood function is irreflexive.\<close>
645
-
and"\<And>x y. isin (n x) y \<Longrightarrow> isin (n y) x"\<comment>\<open>The neighborhood function is symmetric.\<close>
685
+
and"\<And>x. isin X x \<Longrightarrow> \<not> isin (n x) x"\<comment>\<open>The neighborhood function is irreflexive.\<close>
686
+
and"\<And>x y. isin X x \<Longrightarrow> isin (n x) y \<Longrightarrow> isin (n y) x"\<comment>\<open>The neighborhood function is symmetric.\<close>
646
687
shows"ugraph_adj_map_invar (graph_of_vertices n X)"(is"ugraph_adj_map_invar ?G\<^sub>X")
"complete_graph X = graph_of_vertices (\<N>\<^sub>C X) X"
685
-
686
-
lemmamap_invar_complete_graph:"set_invar X \<Longrightarrow> map_invar (complete_graph X)"
687
-
usingmap_invar_graph_of_verticesbyauto
688
-
689
-
lemmacomplete_graph_neighborhood:"set_invar X \<Longrightarrow> \<N> (complete_graph X) = \<N>\<^sub>C X"
690
-
usinggraph_of_vertices_neighborhoodbyauto
691
-
692
-
lemmavertices_complete_graph:
693
-
assumes"set_invar X"
694
-
and"\<And>x. isin X x \<Longrightarrow> \<exists>y. isin (set_delete x X) y"\<comment>\<open>The set \<open>X\<close>containsatleasttwovertices.\<close>
695
-
shows"vertices (complete_graph X) = set X"(is"vertices ?G\<^sub>X = set X")
and"\<And>x. isin X x \<Longrightarrow> \<exists>y. isin (set_delete x X) y"\<comment>\<open>The set \<open>X\<close>containsatleasttwovertices.\<close>
show"\<And>x y. isin (\<N>\<^sub>C X x) y \<Longrightarrow> isin X y"
705
-
usingassmsset_specs
706
-
proof-
707
-
fixxy
708
-
assume"isin (\<N>\<^sub>C X x) y"
709
-
moreoverhence"\<N>\<^sub>C X x = set_delete x X"
710
-
usingassmsset_specsbyauto
711
-
ultimatelyshow"isin X y"
712
-
usingassmsset_specsbyauto
713
-
qed
714
-
show"\<And>x y. isin (\<N>\<^sub>C X x) y \<Longrightarrow> isin (\<N>\<^sub>C X y) x"
715
-
usingassmsneighborhood_compl_symbyauto
716
-
qedauto
717
-
718
-
lemmacomplete_graph_is_complete:
719
-
assumes"set_invar X"
720
-
and"\<And>x. isin X x \<Longrightarrow> \<exists>y. isin (set_delete x X) y"\<comment>\<open>The set \<open>X\<close>containsatleasttwovertices.\<close>
0 commit comments