Skip to content

Instantly share code, notes, and snippets.

@eric-wieser
Last active August 19, 2023 20:53
Show Gist options
  • Save eric-wieser/479c49a306430d9d8a896f105ef32178 to your computer and use it in GitHub Desktop.
Save eric-wieser/479c49a306430d9d8a896f105ef32178 to your computer and use it in GitHub Desktop.
Mathlib instance hierarchy

A tool to estimate "meaningful" edges betweeen typeclass instances in mathlib. Click the raw button on the SVG to zoom in on the graph.

You can regenerate the separate graphs with

lean --run instance_graph.lean > gviz/out.gviz
ccomps gviz/out.gviz "-zX#0" | dot | gvpack -g -m48 -Glabel=\"\" | neato -n2 -Tsvg > gviz/out-large.svg
ccomps gviz/out.gviz "-zX#1-" | dot | gvpack -g -m48 -Glabel=\"\" | neato -n2 -Tsvg > gviz/out-small.svg

(you might need to sudo apt install graphviz)

import tactic.binder_matching
import system.io
import tactic.core
import all
.
open tactic
meta def process_decl (d : declaration) : tactic (name × list name) :=
do
let ty := d.type,
(binders, e) ← get_pi_binders_nondep ty,
let binders := binders.filter (λ b, b.2.info = binder_info.inst_implicit),
let binders := binders.map (λ b, b.2.type.get_app_fn.const_name),
let binders := binders.filter (≠ name.anonymous),
(clsname, args) ← pure e.get_app_fn_args,
matching_args ← args.mfilter (λ a, do {
t ← infer_type a,
(a_binders, a_base) ← mk_local_pis t,
expr.sort u ← pure a_base | pure ff,
pure tt
}),
-- check this is an application with variables
matching_args.mmap (λ a, guard a.is_local_constant <|> fail!"{a} is not a constant"),
pure (clsname.const_name, binders)
meta def find_url (n : name) : format :=
format!"https://leanprover-community.github.io/mathlib_docs/find/{n}"
meta def write (f : format) : io unit :=
io.put_str_ln (f.to_string)
/-- A version of `list.map` for `io` that does not consume the whole stack -/
def list.mmap_io {α β : Type*} (f : α → io β) (l : list α) : io (list β) :=
do
(_, bs) ← io.iterate (l, ([] : list β)) (λ state, do {
(a :: as, bs) ← pure state | return none,
b ← f a,
return (some (as, b :: bs))
}),
pure bs
meta def main : io unit:=
do
infos ← io.run_tactic $ environment.get_decls <$> get_env,
write "digraph \"\" {",
write " ranksep=1;",
write " node[shape=\"box\",margin=\"0.1,0.1\",width=0,height=0,fontname=\"courier\"];",
infos.mmap_io $ λ d, do {
some _ ← io.run_tactic $ try_core (has_attribute `instance d.to_name) | pure (),
some (cls, edges) ← io.run_tactic $ try_core (process_decl d) | pure (),
write "",
write format!" \"{cls}\" [URL=\"{find_url(cls)}\"];",
edges.mmap' (λ src, write format!" \"{src}\" [URL=\"{find_url(src)}\"];"),
match edges with
| [] := pure ()
| [src] := write format!" \"{src}\" -> \"{cls}\" [tooltip=\"{d.to_name}\",URL=\"{find_url(d.to_name)}\"];"
| edges := do
write format!" \"{d.to_name}\" [shape=point,label=\"\",URL=\"{find_url(d.to_name)}\"];",
write format!" \"{d.to_name}\" -> \"{cls}\" [tooltip=\"{d.to_name}\",URL=\"{find_url(d.to_name)}\"];",
edges.mmap' (λ src,
write format!" \"{src}\" -> \"{d.to_name}\" [tooltip=\"{d.to_name}\",URL=\"{find_url(d.to_name)}\"];")
end
},
io.put_str_ln "}"
Display the source blob
Display the rendered blob
Raw
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.43.0 (0)
-->
<!-- Title: root Pages: 1 -->
<svg width="18681pt" height="3493pt"
viewBox="0.00 0.00 18681.01 3493.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 3489)">
<title>root</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-3489 18677.01,-3489 18677.01,4 -4,4"/>
<text text-anchor="middle" x="9336.51" y="-3.8" font-family="Times,serif" font-size="14.00">&quot;&quot;</text>
<!-- mul_action_with_zero -->
<g id="node1" class="node">
<title>mul_action_with_zero</title>
<g id="a_node1"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_action_with_zero" xlink:title="mul_action_with_zero">
<polygon fill="none" stroke="black" points="182,-1161 0,-1161 0,-1130 182,-1130 182,-1161"/>
<text text-anchor="middle" x="91" y="-1141.8" font-family="Courier,monospace" font-size="14.00">mul_action_with_zero</text>
</a>
</g>
</g>
<!-- mul_action -->
<g id="node2" class="node">
<title>mul_action</title>
<g id="a_node2"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_action" xlink:title="mul_action">
<polygon fill="none" stroke="black" points="411,-1060 313,-1060 313,-1029 411,-1029 411,-1060"/>
<text text-anchor="middle" x="362" y="-1040.8" font-family="Courier,monospace" font-size="14.00">mul_action</text>
</a>
</g>
</g>
<!-- mul_action_with_zero&#45;&gt;mul_action -->
<g id="edge1" class="edge">
<title>mul_action_with_zero&#45;&gt;mul_action</title>
<g id="a_edge1"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_action_with_zero.to_mul_action" xlink:title="mul_action_with_zero.to_mul_action">
<path fill="none" stroke="black" d="M128.11,-1131.4C176.83,-1113.6 262.37,-1082.4 315.39,-1063"/>
<polygon fill="black" stroke="black" points="316.67,-1066.26 324.9,-1059.6 314.31,-1059.67 316.67,-1066.26"/>
</a>
</g>
</g>
<!-- smul_with_zero -->
<g id="node3" class="node">
<title>smul_with_zero</title>
<g id="a_node3"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/smul_with_zero" xlink:title="smul_with_zero">
<polygon fill="none" stroke="black" points="186,-1060 54,-1060 54,-1029 186,-1029 186,-1060"/>
<text text-anchor="middle" x="120" y="-1040.8" font-family="Courier,monospace" font-size="14.00">smul_with_zero</text>
</a>
</g>
</g>
<!-- mul_action_with_zero&#45;&gt;smul_with_zero -->
<g id="edge2" class="edge">
<title>mul_action_with_zero&#45;&gt;smul_with_zero</title>
<g id="a_edge2"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_action_with_zero.to_smul_with_zero" xlink:title="mul_action_with_zero.to_smul_with_zero">
<path fill="none" stroke="black" d="M95.03,-1131.2C99.71,-1115.3 107.49,-1088.7 113.13,-1069.5"/>
<polygon fill="black" stroke="black" points="116.58,-1070.18 116,-1059.6 109.86,-1068.23 116.58,-1070.18"/>
</a>
</g>
</g>
<!-- has_smul -->
<g id="node4" class="node">
<title>has_smul</title>
<g id="a_node4"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_smul" xlink:title="has_smul">
<polygon fill="none" stroke="black" points="483.5,-958.98 402.5,-958.98 402.5,-927.98 483.5,-927.98 483.5,-958.98"/>
<text text-anchor="middle" x="443" y="-939.78" font-family="Courier,monospace" font-size="14.00">has_smul</text>
</a>
</g>
</g>
<!-- mul_action&#45;&gt;has_smul -->
<g id="edge3" class="edge">
<title>mul_action&#45;&gt;has_smul</title>
<g id="a_edge3"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_action.to_has_smul" xlink:title="mul_action.to_has_smul">
<path fill="none" stroke="black" d="M373.26,-1030.2C386.74,-1013.7 409.48,-985.95 425.31,-966.6"/>
<polygon fill="black" stroke="black" points="428.21,-968.59 431.83,-958.63 422.79,-964.15 428.21,-968.59"/>
</a>
</g>
</g>
<!-- smul_with_zero&#45;&gt;has_smul -->
<g id="edge4" class="edge">
<title>smul_with_zero&#45;&gt;has_smul</title>
<g id="a_edge4"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/smul_with_zero.to_has_smul" xlink:title="smul_with_zero.to_has_smul">
<path fill="none" stroke="black" d="M164.23,-1030.4C223.93,-1012.1 330.01,-979.61 392.68,-960.4"/>
<polygon fill="black" stroke="black" points="393.82,-963.71 402.35,-957.44 391.77,-957.02 393.82,-963.71"/>
</a>
</g>
</g>
<!-- module -->
<g id="node5" class="node">
<title>module</title>
<g id="a_node5"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/module" xlink:title="module">
<polygon fill="none" stroke="black" points="381,-1262 317,-1262 317,-1231 381,-1231 381,-1262"/>
<text text-anchor="middle" x="349" y="-1242.8" font-family="Courier,monospace" font-size="14.00">module</text>
</a>
</g>
</g>
<!-- module&#45;&gt;mul_action_with_zero -->
<g id="edge5" class="edge">
<title>module&#45;&gt;mul_action_with_zero</title>
<g id="a_edge5"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/module.to_mul_action_with_zero" xlink:title="module.to_mul_action_with_zero">
<path fill="none" stroke="black" d="M316.85,-1233.7C271.29,-1216.2 187.75,-1184.1 136.04,-1164.3"/>
<polygon fill="black" stroke="black" points="137.05,-1160.94 126.46,-1160.6 134.53,-1167.47 137.05,-1160.94"/>
</a>
</g>
</g>
<!-- distrib_mul_action -->
<g id="node6" class="node">
<title>distrib_mul_action</title>
<g id="a_node6"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/distrib_mul_action" xlink:title="distrib_mul_action">
<polygon fill="none" stroke="black" points="363.5,-1161 198.5,-1161 198.5,-1130 363.5,-1130 363.5,-1161"/>
<text text-anchor="middle" x="281" y="-1141.8" font-family="Courier,monospace" font-size="14.00">distrib_mul_action</text>
</a>
</g>
</g>
<!-- module&#45;&gt;distrib_mul_action -->
<g id="edge6" class="edge">
<title>module&#45;&gt;distrib_mul_action</title>
<g id="a_edge6"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/module.to_distrib_mul_action" xlink:title="module.to_distrib_mul_action">
<path fill="none" stroke="black" d="M339.54,-1232.2C328.33,-1215.9 309.48,-1188.5 296.21,-1169.1"/>
<polygon fill="black" stroke="black" points="298.92,-1166.86 290.37,-1160.6 293.15,-1170.82 298.92,-1166.86"/>
</a>
</g>
</g>
<!-- distrib_mul_action&#45;&gt;mul_action -->
<g id="edge7" class="edge">
<title>distrib_mul_action&#45;&gt;mul_action</title>
<g id="a_edge7"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/distrib_mul_action.to_mul_action" xlink:title="distrib_mul_action.to_mul_action">
<path fill="none" stroke="black" d="M292.26,-1131.2C305.74,-1114.8 328.48,-1087 344.31,-1067.6"/>
<polygon fill="black" stroke="black" points="347.23,-1069.56 350.83,-1059.6 341.8,-1065.14 347.23,-1069.56"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_limits_of_size -->
<g id="node7" class="node">
<title>category_theory.limits.reflects_limits_of_size</title>
<g id="a_node7"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.reflects_limits_of_size" xlink:title="category_theory.limits.reflects_limits_of_size">
<polygon fill="none" stroke="black" points="9848.01,-1161 9448.01,-1161 9448.01,-1130 9848.01,-1130 9848.01,-1161"/>
<text text-anchor="middle" x="9648.01" y="-1141.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.reflects_limits_of_size</text>
</a>
</g>
</g>
<!-- category_theory.limits.comp_reflects_limits -->
<g id="node8" class="node">
<title>category_theory.limits.comp_reflects_limits</title>
<g id="a_node8"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_limits" xlink:title="category_theory.limits.comp_reflects_limits">
<ellipse fill="black" stroke="black" cx="9662.01" cy="-1044.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_limits_of_size&#45;&gt;category_theory.limits.comp_reflects_limits -->
<g id="edge8" class="edge">
<title>category_theory.limits.reflects_limits_of_size&#45;&gt;category_theory.limits.comp_reflects_limits</title>
<g id="a_edge8"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_limits" xlink:title="category_theory.limits.comp_reflects_limits">
<path fill="none" stroke="black" d="M9640.31,-1131.2C9637.51,-1109.7 9644.11,-1068.9 9653.81,-1052.8"/>
<polygon fill="black" stroke="black" points="9656.42,-1055.18 9661.71,-1046 9651.85,-1049.87 9656.42,-1055.18"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_limits_of_size&#45;&gt;category_theory.limits.comp_reflects_limits -->
<g id="edge9" class="edge">
<title>category_theory.limits.reflects_limits_of_size&#45;&gt;category_theory.limits.comp_reflects_limits</title>
<g id="a_edge9"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_limits" xlink:title="category_theory.limits.comp_reflects_limits">
<path fill="none" stroke="black" d="M9649.91,-1131.2C9652.81,-1111.1 9658.11,-1073.9 9660.61,-1056.1"/>
<polygon fill="black" stroke="black" points="9664.09,-1056.49 9662.01,-1046.1 9657.16,-1055.52 9664.09,-1056.49"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_limits_of_shape -->
<g id="node9" class="node">
<title>category_theory.limits.reflects_limits_of_shape</title>
<g id="a_node9"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.reflects_limits_of_shape" xlink:title="category_theory.limits.reflects_limits_of_shape">
<polygon fill="none" stroke="black" points="9573.51,-1060 9164.51,-1060 9164.51,-1029 9573.51,-1029 9573.51,-1060"/>
<text text-anchor="middle" x="9369.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.reflects_limits_of_shape</text>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_limits_of_size&#45;&gt;category_theory.limits.reflects_limits_of_shape -->
<g id="edge10" class="edge">
<title>category_theory.limits.reflects_limits_of_size&#45;&gt;category_theory.limits.reflects_limits_of_shape</title>
<g id="a_edge10"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.reflects_limits_of_shape_of_reflects_limits" xlink:title="category_theory.limits.reflects_limits_of_shape_of_reflects_limits">
<path fill="none" stroke="black" d="M9609.81,-1131.4C9559.51,-1113.6 9471.21,-1082.3 9416.61,-1062.9"/>
<polygon fill="black" stroke="black" points="9417.81,-1059.61 9407.21,-1059.6 9415.49,-1066.21 9417.81,-1059.61"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_reflects_limits&#45;&gt;category_theory.limits.reflects_limits_of_size -->
<g id="edge11" class="edge">
<title>category_theory.limits.comp_reflects_limits&#45;&gt;category_theory.limits.reflects_limits_of_size</title>
<g id="a_edge11"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_limits" xlink:title="category_theory.limits.comp_reflects_limits">
<path fill="none" stroke="black" d="M9662.31,-1046C9674.31,-1046.8 9671.61,-1092.8 9662.91,-1121.8"/>
<polygon fill="black" stroke="black" points="9659.62,-1120.61 9659.61,-1131.2 9666.23,-1122.92 9659.62,-1120.61"/>
</a>
</g>
</g>
<!-- category_theory.functor.reflects_monomorphisms -->
<g id="node10" class="node">
<title>category_theory.functor.reflects_monomorphisms</title>
<g id="a_node10"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_monomorphisms" xlink:title="category_theory.functor.reflects_monomorphisms">
<polygon fill="none" stroke="black" points="8492.01,-958.98 8092.01,-958.98 8092.01,-927.98 8492.01,-927.98 8492.01,-958.98"/>
<text text-anchor="middle" x="8292.01" y="-939.78" font-family="Courier,monospace" font-size="14.00">category_theory.functor.reflects_monomorphisms</text>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_limits_of_shape&#45;&gt;category_theory.functor.reflects_monomorphisms -->
<g id="edge12" class="edge">
<title>category_theory.limits.reflects_limits_of_shape&#45;&gt;category_theory.functor.reflects_monomorphisms</title>
<g id="a_edge12"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.reflects_monomorphisms_of_reflects_limits_of_shape" xlink:title="category_theory.reflects_monomorphisms_of_reflects_limits_of_shape">
<path fill="none" stroke="black" d="M9222.11,-1030.5C9019.71,-1011.9 8656.91,-978.52 8449.21,-959.43"/>
<polygon fill="black" stroke="black" points="8449.49,-955.94 8439.21,-958.51 8448.85,-962.91 8449.49,-955.94"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_limit -->
<g id="node11" class="node">
<title>category_theory.limits.reflects_limit</title>
<g id="a_node11"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.reflects_limit" xlink:title="category_theory.limits.reflects_limit">
<polygon fill="none" stroke="black" points="6292.51,-958.98 5967.51,-958.98 5967.51,-927.98 6292.51,-927.98 6292.51,-958.98"/>
<text text-anchor="middle" x="6130.01" y="-939.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.reflects_limit</text>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_limits_of_shape&#45;&gt;category_theory.limits.reflects_limit -->
<g id="edge13" class="edge">
<title>category_theory.limits.reflects_limits_of_shape&#45;&gt;category_theory.limits.reflects_limit</title>
<g id="a_edge13"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.reflects_limit_of_reflects_limits_of_shape" xlink:title="category_theory.limits.reflects_limit_of_reflects_limits_of_shape">
<path fill="none" stroke="black" d="M9167.71,-1032.5C9151.91,-1031.8 9136.21,-1031.1 9121.01,-1030.5 7897.11,-981.19 7589.81,-1009.5 6366.01,-958.48 6344.81,-957.59 6322.41,-956.52 6300.41,-955.36"/>
<polygon fill="black" stroke="black" points="6300.39,-951.85 6290.21,-954.82 6300.01,-958.84 6300.39,-951.85"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_reflects_limits_of_shape -->
<g id="node12" class="node">
<title>category_theory.limits.comp_reflects_limits_of_shape</title>
<g id="a_node12"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_limits_of_shape" xlink:title="category_theory.limits.comp_reflects_limits_of_shape">
<ellipse fill="black" stroke="black" cx="9369.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_limits_of_shape&#45;&gt;category_theory.limits.comp_reflects_limits_of_shape -->
<g id="edge14" class="edge">
<title>category_theory.limits.reflects_limits_of_shape&#45;&gt;category_theory.limits.comp_reflects_limits_of_shape</title>
<g id="a_edge14"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_limits_of_shape" xlink:title="category_theory.limits.comp_reflects_limits_of_shape">
<path fill="none" stroke="black" d="M9359.31,-1030.2C9353.61,-1008.9 9354.31,-968.72 9361.51,-952.28"/>
<polygon fill="black" stroke="black" points="9364.18,-954.56 9368.71,-944.99 9359.2,-949.65 9364.18,-954.56"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_limits_of_shape&#45;&gt;category_theory.limits.comp_reflects_limits_of_shape -->
<g id="edge15" class="edge">
<title>category_theory.limits.reflects_limits_of_shape&#45;&gt;category_theory.limits.comp_reflects_limits_of_shape</title>
<g id="a_edge15"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_limits_of_shape" xlink:title="category_theory.limits.comp_reflects_limits_of_shape">
<path fill="none" stroke="black" d="M9369.01,-1030.2C9369.01,-1010.1 9369.01,-973.28 9369.01,-955.34"/>
<polygon fill="black" stroke="black" points="9372.51,-955.15 9369.01,-945.15 9365.51,-955.15 9372.51,-955.15"/>
</a>
</g>
</g>
<!-- category_theory.functor.reflects_monomorphisms_comp -->
<g id="node13" class="node">
<title>category_theory.functor.reflects_monomorphisms_comp</title>
<g id="a_node13"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_monomorphisms_comp" xlink:title="category_theory.functor.reflects_monomorphisms_comp">
<ellipse fill="black" stroke="black" cx="8292.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.functor.reflects_monomorphisms&#45;&gt;category_theory.functor.reflects_monomorphisms_comp -->
<g id="edge16" class="edge">
<title>category_theory.functor.reflects_monomorphisms&#45;&gt;category_theory.functor.reflects_monomorphisms_comp</title>
<g id="a_edge16"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_monomorphisms_comp" xlink:title="category_theory.functor.reflects_monomorphisms_comp">
<path fill="none" stroke="black" d="M8282.31,-929.21C8276.61,-907.92 8277.31,-867.72 8284.51,-851.28"/>
<polygon fill="black" stroke="black" points="8287.18,-853.56 8291.71,-843.99 8282.2,-848.65 8287.18,-853.56"/>
</a>
</g>
</g>
<!-- category_theory.functor.reflects_monomorphisms&#45;&gt;category_theory.functor.reflects_monomorphisms_comp -->
<g id="edge17" class="edge">
<title>category_theory.functor.reflects_monomorphisms&#45;&gt;category_theory.functor.reflects_monomorphisms_comp</title>
<g id="a_edge17"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_monomorphisms_comp" xlink:title="category_theory.functor.reflects_monomorphisms_comp">
<path fill="none" stroke="black" d="M8292.01,-929.21C8292.01,-909.14 8292.01,-872.28 8292.01,-854.34"/>
<polygon fill="black" stroke="black" points="8295.51,-854.15 8292.01,-844.15 8288.51,-854.15 8295.51,-854.15"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_reflects_limit -->
<g id="node14" class="node">
<title>category_theory.limits.comp_reflects_limit</title>
<g id="a_node14"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_limit" xlink:title="category_theory.limits.comp_reflects_limit">
<ellipse fill="black" stroke="black" cx="6026.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_limit&#45;&gt;category_theory.limits.comp_reflects_limit -->
<g id="edge18" class="edge">
<title>category_theory.limits.reflects_limit&#45;&gt;category_theory.limits.comp_reflects_limit</title>
<g id="a_edge18"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_limit" xlink:title="category_theory.limits.comp_reflects_limit">
<path fill="none" stroke="black" d="M6098.41,-929.31C6072.91,-913.54 6039.61,-886.08 6016.01,-857.48 6012.81,-853.56 6010.01,-848.18 6015.71,-845.56"/>
<polygon fill="black" stroke="black" points="6016.29,-849.01 6025.61,-843.98 6015.19,-842.1 6016.29,-849.01"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_limit&#45;&gt;category_theory.limits.comp_reflects_limit -->
<g id="edge19" class="edge">
<title>category_theory.limits.reflects_limit&#45;&gt;category_theory.limits.comp_reflects_limit</title>
<g id="a_edge19"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_limit" xlink:title="category_theory.limits.comp_reflects_limit">
<path fill="none" stroke="black" d="M6111.51,-929.31C6090.91,-913.54 6057.61,-886.08 6034.01,-857.48 6032.91,-856.14 6031.81,-854.63 6030.91,-853.12"/>
<polygon fill="black" stroke="black" points="6033.85,-851.2 6026.01,-844.07 6027.7,-854.53 6033.85,-851.2"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_reflects_limits_of_shape&#45;&gt;category_theory.limits.reflects_limits_of_shape -->
<g id="edge20" class="edge">
<title>category_theory.limits.comp_reflects_limits_of_shape&#45;&gt;category_theory.limits.reflects_limits_of_shape</title>
<g id="a_edge20"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_limits_of_shape" xlink:title="category_theory.limits.comp_reflects_limits_of_shape">
<path fill="none" stroke="black" d="M9369.31,-944.99C9381.41,-945.79 9385.11,-991.36 9380.71,-1020.4"/>
<polygon fill="black" stroke="black" points="9377.28,-1019.7 9378.71,-1030.2 9384.14,-1021.1 9377.28,-1019.7"/>
</a>
</g>
</g>
<!-- category_theory.functor.reflects_monomorphisms_comp&#45;&gt;category_theory.functor.reflects_monomorphisms -->
<g id="edge197" class="edge">
<title>category_theory.functor.reflects_monomorphisms_comp&#45;&gt;category_theory.functor.reflects_monomorphisms</title>
<g id="a_edge197"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_monomorphisms_comp" xlink:title="category_theory.functor.reflects_monomorphisms_comp">
<path fill="none" stroke="black" d="M8292.31,-843.99C8304.41,-844.79 8308.11,-890.36 8303.71,-919.38"/>
<polygon fill="black" stroke="black" points="8300.28,-918.71 8301.71,-929.21 8307.14,-920.11 8300.28,-918.71"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_reflects_limit&#45;&gt;category_theory.limits.reflects_limit -->
<g id="edge198" class="edge">
<title>category_theory.limits.comp_reflects_limit&#45;&gt;category_theory.limits.reflects_limit</title>
<g id="a_edge198"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_limit" xlink:title="category_theory.limits.comp_reflects_limit">
<path fill="none" stroke="black" d="M6026.41,-843.98C6044.11,-844.11 6047.61,-852.14 6052.01,-857.48 6072.21,-882.05 6099.71,-905.79 6117.01,-921.99"/>
<polygon fill="black" stroke="black" points="6114.98,-924.89 6124.61,-929.31 6119.84,-919.85 6114.98,-924.89"/>
</a>
</g>
</g>
<!-- category_theory.mono -->
<g id="node15" class="node">
<title>category_theory.mono</title>
<g id="a_node15"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.mono" xlink:title="category_theory.mono">
<polygon fill="none" stroke="black" points="4031.01,-958.98 3849.01,-958.98 3849.01,-927.98 4031.01,-927.98 4031.01,-958.98"/>
<text text-anchor="middle" x="3940.01" y="-939.78" font-family="Courier,monospace" font-size="14.00">category_theory.mono</text>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.mono -->
<g id="edge21" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.mono</title>
<g id="a_edge21"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.biprod.mono_lift_of_mono_right" xlink:title="category_theory.limits.biprod.mono_lift_of_mono_right">
<path fill="none" stroke="black" d="M4030.21,-945.77C4041.01,-945.44 4048.01,-944.85 4048.01,-943.98 4048.01,-943.42 4045.11,-942.98 4040.21,-942.65"/>
<polygon fill="black" stroke="black" points="4040.36,-939.15 4030.21,-942.19 4040.04,-946.15 4040.36,-939.15"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.mono -->
<g id="edge22" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.mono</title>
<g id="a_edge22"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.preadditive.has_neg.neg.category_theory.mono" xlink:title="category_theory.preadditive.has_neg.neg.category_theory.mono">
<path fill="none" stroke="black" d="M4030.01,-948.05C4050.81,-947.7 4066.01,-946.35 4066.01,-943.98 4066.01,-942.02 4055.61,-940.75 4040.21,-940.18"/>
<polygon fill="black" stroke="black" points="4040.1,-936.68 4030.01,-939.91 4039.92,-943.67 4040.1,-936.68"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.mono -->
<g id="edge23" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.mono</title>
<g id="a_edge23"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.prod.mono_lift_of_mono_left" xlink:title="category_theory.limits.prod.mono_lift_of_mono_left">
<path fill="none" stroke="black" d="M4030.41,-950.23C4060.21,-950.21 4084.01,-948.13 4084.01,-943.98 4084.01,-940.32 4065.41,-938.26 4040.61,-937.82"/>
<polygon fill="black" stroke="black" points="4040.44,-934.32 4030.41,-937.73 4040.38,-941.32 4040.44,-934.32"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.mono -->
<g id="edge24" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.mono</title>
<g id="a_edge24"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pullback.fst_of_mono" xlink:title="category_theory.limits.pullback.fst_of_mono">
<path fill="none" stroke="black" d="M4030.41,-952.22C4069.01,-952.87 4102.01,-950.12 4102.01,-943.98 4102.01,-938.39 4074.71,-935.61 4040.61,-935.65"/>
<polygon fill="black" stroke="black" points="4040.38,-932.15 4030.41,-935.74 4040.44,-939.15 4040.38,-932.15"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.mono -->
<g id="edge25" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.mono</title>
<g id="a_edge25"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.prod.mono_lift_of_mono_right" xlink:title="category_theory.limits.prod.mono_lift_of_mono_right">
<path fill="none" stroke="black" d="M4030.31,-954.02C4077.41,-955.6 4120.01,-952.25 4120.01,-943.98 4120.01,-936.3 4083.31,-932.87 4040.41,-933.68"/>
<polygon fill="black" stroke="black" points="4040.22,-930.18 4030.31,-933.94 4040.4,-937.18 4040.22,-930.18"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.mono -->
<g id="edge26" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.mono</title>
<g id="a_edge26"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.mono_factor_thru_image" xlink:title="category_theory.abelian.mono_factor_thru_image">
<path fill="none" stroke="black" d="M4030.11,-955.62C4085.51,-958.38 4138.01,-954.49 4138.01,-943.98 4138.01,-934.1 4091.61,-930.08 4040.11,-931.91"/>
<polygon fill="black" stroke="black" points="4039.95,-928.41 4030.11,-932.34 4040.26,-935.41 4039.95,-928.41"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.mono -->
<g id="edge27" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.mono</title>
<g id="a_edge27"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.biprod.mono_lift_of_mono_left" xlink:title="category_theory.limits.biprod.mono_lift_of_mono_left">
<path fill="none" stroke="black" d="M4030.21,-957.09C4093.41,-961.17 4156.01,-956.8 4156.01,-943.98 4156.01,-931.84 4099.91,-927.28 4040.21,-930.3"/>
<polygon fill="black" stroke="black" points="4040,-926.81 4030.21,-930.87 4040.4,-933.8 4040,-926.81"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.mono -->
<g id="edge28" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.mono</title>
<g id="a_edge28"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pullback.snd_of_mono" xlink:title="category_theory.limits.pullback.snd_of_mono">
<path fill="none" stroke="black" d="M4030.11,-958.4C4101.11,-963.98 4174.01,-959.17 4174.01,-943.98 4174.01,-929.5 4107.81,-924.46 4040.01,-928.84"/>
<polygon fill="black" stroke="black" points="4039.83,-925.34 4030.11,-929.56 4040.34,-932.33 4039.83,-925.34"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.mono -->
<g id="edge29" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.mono</title>
<g id="a_edge29"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.kernel.lift_mono" xlink:title="category_theory.limits.kernel.lift_mono">
<path fill="none" stroke="black" d="M4019.01,-958.51C4100.71,-967.25 4192.01,-962.41 4192.01,-943.98 4192.01,-926.3 4108.01,-921.13 4029.11,-928.45"/>
<polygon fill="black" stroke="black" points="4028.62,-924.98 4019.01,-929.45 4029.31,-931.95 4028.62,-924.98"/>
</a>
</g>
</g>
<!-- category_theory.is_iso -->
<g id="node16" class="node">
<title>category_theory.is_iso</title>
<g id="a_node16"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_iso" xlink:title="category_theory.is_iso">
<polygon fill="none" stroke="black" points="4717.51,-756.98 4518.51,-756.98 4518.51,-725.98 4717.51,-725.98 4717.51,-756.98"/>
<text text-anchor="middle" x="4618.01" y="-737.78" font-family="Courier,monospace" font-size="14.00">category_theory.is_iso</text>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.is_iso -->
<g id="edge30" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.is_iso</title>
<g id="a_edge30"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.is_iso_factor_thru_image" xlink:title="category_theory.abelian.is_iso_factor_thru_image">
<path fill="none" stroke="black" d="M3975.21,-929.39C4083.81,-893.76 4409.01,-797.74 4551.11,-759.26"/>
<polygon fill="black" stroke="black" points="4552.27,-762.57 4561.01,-756.59 4550.45,-755.81 4552.27,-762.57"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.is_iso -->
<g id="edge31" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.is_iso</title>
<g id="a_edge31"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.non_preadditive_abelian.is_iso_factor_thru_image" xlink:title="category_theory.non_preadditive_abelian.is_iso_factor_thru_image">
<path fill="none" stroke="black" d="M3982.21,-929.47C4098.61,-893.94 4423.71,-797.99 4558.41,-759.39"/>
<polygon fill="black" stroke="black" points="4559.55,-762.7 4568.21,-756.6 4557.64,-755.97 4559.55,-762.7"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.is_iso -->
<g id="edge32" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.is_iso</title>
<g id="a_edge32"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.category_theory.limits.kernel.lift.category_theory.is_iso" xlink:title="category_theory.abelian.category_theory.limits.kernel.lift.category_theory.is_iso">
<path fill="none" stroke="black" d="M3989.41,-929.47C4113.71,-894.01 4438.01,-798.37 4565.51,-759.62"/>
<polygon fill="black" stroke="black" points="4566.87,-762.87 4575.41,-756.6 4564.83,-756.17 4566.87,-762.87"/>
</a>
</g>
</g>
<!-- category_theory.epi -->
<g id="node17" class="node">
<title>category_theory.epi</title>
<g id="a_node17"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.epi" xlink:title="category_theory.epi">
<polygon fill="none" stroke="black" points="2873.01,-352.98 2699.01,-352.98 2699.01,-321.98 2873.01,-321.98 2873.01,-352.98"/>
<text text-anchor="middle" x="2786.01" y="-333.78" font-family="Courier,monospace" font-size="14.00">category_theory.epi</text>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.epi -->
<g id="edge33" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.epi</title>
<g id="a_edge33"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.unop_epi_of_mono" xlink:title="category_theory.unop_epi_of_mono">
<path fill="none" stroke="black" d="M3849.71,-942.42C3659.71,-939.93 3227.01,-926.68 3101.01,-857.48 3036.41,-821.99 3058.21,-769.96 2998.01,-727.48 2916.71,-670.14 2856.61,-725.62 2786.01,-655.48 2705.71,-575.71 2742.81,-419.92 2769.81,-361.67"/>
<polygon fill="black" stroke="black" points="2773.02,-363.08 2774.41,-352.58 2766.78,-359.92 2773.02,-363.08"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.epi -->
<g id="edge34" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.epi</title>
<g id="a_edge34"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/image_to_kernel_epi_of_zero_of_mono" xlink:title="image_to_kernel_epi_of_zero_of_mono">
<path fill="none" stroke="black" d="M3849.71,-942.29C3663.31,-939.47 3242.91,-925.52 3119.01,-857.48 3054.41,-821.99 3076.21,-769.96 3016.01,-727.48 2934.71,-670.14 2874.61,-725.62 2804.01,-655.48 2724.11,-576.04 2760.51,-421.2 2778.31,-362.4"/>
<polygon fill="black" stroke="black" points="2781.74,-363.17 2781.31,-352.58 2775.04,-361.12 2781.74,-363.17"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image -->
<g id="node18" class="node">
<title>category_theory.limits.has_image</title>
<g id="a_node18"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image" xlink:title="category_theory.limits.has_image">
<polygon fill="none" stroke="black" points="2502.51,-554.98 2219.51,-554.98 2219.51,-523.98 2502.51,-523.98 2502.51,-554.98"/>
<text text-anchor="middle" x="2361.01" y="-535.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_image</text>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.limits.has_image -->
<g id="edge35" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.limits.has_image</title>
<g id="a_edge35"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.mono_has_image" xlink:title="category_theory.limits.mono_has_image">
<path fill="none" stroke="black" d="M3849.71,-940.21C3568.91,-931.19 2723.61,-900.72 2608.01,-857.48 2588.11,-850.04 2589.01,-837.97 2570.01,-828.48 2464.31,-775.69 2385.41,-850.69 2314.01,-756.48 2269.41,-697.62 2318.71,-605.14 2345.71,-563.1"/>
<polygon fill="black" stroke="black" points="2348.66,-564.98 2351.21,-554.7 2342.81,-561.15 2348.66,-564.98"/>
</a>
</g>
</g>
<!-- category_theory.linear.has_smul.smul.category_theory.mono -->
<g id="node19" class="node">
<title>category_theory.linear.has_smul.smul.category_theory.mono</title>
<g id="a_node19"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.linear.has_smul.smul.category_theory.mono" xlink:title="category_theory.linear.has_smul.smul.category_theory.mono">
<ellipse fill="black" stroke="black" cx="7258.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.linear.has_smul.smul.category_theory.mono -->
<g id="edge36" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.linear.has_smul.smul.category_theory.mono</title>
<g id="a_edge36"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.linear.has_smul.smul.category_theory.mono" xlink:title="category_theory.linear.has_smul.smul.category_theory.mono">
<path fill="none" stroke="black" d="M4030.31,-941.75C4552.91,-934.62 7167.71,-897.41 7240.01,-857.48 7243.41,-855.6 7245.71,-851.84 7248.61,-848.76"/>
<polygon fill="black" stroke="black" points="7250.42,-851.77 7257.61,-843.99 7247.14,-845.58 7250.42,-851.77"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_pullback -->
<g id="node20" class="node">
<title>category_theory.limits.has_pullback</title>
<g id="a_node20"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pullback" xlink:title="category_theory.limits.has_pullback">
<polygon fill="none" stroke="black" points="3906.01,-857.98 3598.01,-857.98 3598.01,-826.98 3906.01,-826.98 3906.01,-857.98"/>
<text text-anchor="middle" x="3752.01" y="-838.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_pullback</text>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.limits.has_pullback -->
<g id="edge37" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.limits.has_pullback</title>
<g id="a_edge37"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pullback_of_left_factors_mono" xlink:title="category_theory.limits.has_pullback_of_left_factors_mono">
<path fill="none" stroke="black" d="M3904.61,-929.42C3867.11,-912.14 3809.81,-882.18 3776.71,-862.72"/>
<polygon fill="black" stroke="black" points="3778.48,-859.7 3768.11,-857.53 3774.87,-865.69 3778.48,-859.7"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.limits.has_pullback -->
<g id="edge38" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.limits.has_pullback</title>
<g id="a_edge38"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pullback_of_right_factors_mono" xlink:title="category_theory.limits.has_pullback_of_right_factors_mono">
<path fill="none" stroke="black" d="M3914.31,-929.42C3881.21,-911.99 3823.61,-881.67 3786.61,-862.23"/>
<polygon fill="black" stroke="black" points="3788.19,-859.1 3777.71,-857.53 3784.92,-865.29 3788.19,-859.1"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.limits.has_pullback -->
<g id="edge39" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.limits.has_pullback</title>
<g id="a_edge39"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_kernel_pair_of_mono" xlink:title="category_theory.limits.has_kernel_pair_of_mono">
<path fill="none" stroke="black" d="M3923.91,-929.42C3895.41,-911.88 3837.61,-881.28 3796.61,-861.86"/>
<polygon fill="black" stroke="black" points="3797.95,-858.62 3787.41,-857.53 3794.97,-864.96 3797.95,-858.62"/>
</a>
</g>
</g>
<!-- category_theory.mono_comp -->
<g id="node21" class="node">
<title>category_theory.mono_comp</title>
<g id="a_node21"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.mono_comp" xlink:title="category_theory.mono_comp">
<ellipse fill="black" stroke="black" cx="3922.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.mono_comp -->
<g id="edge40" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.mono_comp</title>
<g id="a_edge40"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.mono_comp" xlink:title="category_theory.mono_comp">
<path fill="none" stroke="black" d="M3927.81,-929.21C3918.31,-908.23 3911.81,-868.91 3915.71,-852.02"/>
<polygon fill="black" stroke="black" points="3918.53,-854.1 3921.71,-843.99 3912.92,-849.91 3918.53,-854.1"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.mono_comp -->
<g id="edge41" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.mono_comp</title>
<g id="a_edge41"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.mono_comp" xlink:title="category_theory.mono_comp">
<path fill="none" stroke="black" d="M3937.51,-929.21C3933.81,-909.04 3927.11,-871.9 3923.81,-854.06"/>
<polygon fill="black" stroke="black" points="3927.24,-853.36 3922.01,-844.15 3920.36,-854.61 3927.24,-853.36"/>
</a>
</g>
</g>
<!-- category_theory.abelian.mono_pushout_of_mono_f -->
<g id="node22" class="node">
<title>category_theory.abelian.mono_pushout_of_mono_f</title>
<g id="a_node22"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.mono_pushout_of_mono_f" xlink:title="category_theory.abelian.mono_pushout_of_mono_f">
<ellipse fill="black" stroke="black" cx="2989.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.abelian.mono_pushout_of_mono_f -->
<g id="edge42" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.abelian.mono_pushout_of_mono_f</title>
<g id="a_edge42"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.mono_pushout_of_mono_f" xlink:title="category_theory.abelian.mono_pushout_of_mono_f">
<path fill="none" stroke="black" d="M3849.81,-939.4C3626.71,-929.7 3061.61,-900.69 2989.01,-857.48 2987.31,-856.46 2985.81,-854.97 2984.81,-853.35"/>
<polygon fill="black" stroke="black" points="2988.1,-854.57 2988.61,-843.99 2981.61,-851.94 2988.1,-854.57"/>
</a>
</g>
</g>
<!-- category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso -->
<g id="node23" class="node">
<title>category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso</title>
<g id="a_node23"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso" xlink:title="category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso">
<ellipse fill="black" stroke="black" cx="3798.01" cy="-640.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso -->
<g id="edge43" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso</title>
<g id="a_edge43"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso" xlink:title="category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso">
<path fill="none" stroke="black" d="M3959.51,-929.25C3979.11,-914.21 4007.91,-888.11 4020.01,-857.48 4041.21,-803.74 4053.71,-774.42 4020.01,-727.48 3961.71,-646.29 3886.31,-716.3 3807.01,-655.48 3805.41,-654.26 3804.01,-652.67 3802.81,-651.02"/>
<polygon fill="black" stroke="black" points="3805.83,-649.23 3798.01,-642.08 3799.66,-652.55 3805.83,-649.23"/>
</a>
</g>
</g>
<!-- category_theory.functor.map_mono -->
<g id="node24" class="node">
<title>category_theory.functor.map_mono</title>
<g id="a_node24"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.map_mono" xlink:title="category_theory.functor.map_mono">
<ellipse fill="black" stroke="black" cx="4894.01" cy="-438.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.functor.map_mono -->
<g id="edge44" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.functor.map_mono</title>
<g id="a_edge44"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.map_mono" xlink:title="category_theory.functor.map_mono">
<path fill="none" stroke="black" d="M4030.21,-938.62C4240.71,-928.07 4751.21,-898.93 4817.01,-857.48 4861.41,-829.54 4863.91,-807 4878.01,-756.48 4886.61,-725.66 4876.21,-665.49 4865.01,-626.48 4852.01,-581.08 4819.11,-570.9 4832.01,-525.48 4834.51,-516.65 4868.71,-464.61 4885.81,-446.33"/>
<polygon fill="black" stroke="black" points="4888.15,-448.94 4893.81,-439.99 4883.8,-443.46 4888.15,-448.94"/>
</a>
</g>
</g>
<!-- category_theory.limits.prod.map_mono -->
<g id="node25" class="node">
<title>category_theory.limits.prod.map_mono</title>
<g id="a_node25"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.prod.map_mono" xlink:title="category_theory.limits.prod.map_mono">
<ellipse fill="black" stroke="black" cx="3940.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.limits.prod.map_mono -->
<g id="edge45" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.limits.prod.map_mono</title>
<g id="a_edge45"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.prod.map_mono" xlink:title="category_theory.limits.prod.map_mono">
<path fill="none" stroke="black" d="M3930.31,-929.21C3924.61,-907.92 3925.31,-867.72 3932.51,-851.28"/>
<polygon fill="black" stroke="black" points="3935.18,-853.56 3939.71,-843.99 3930.2,-848.65 3935.18,-853.56"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.limits.prod.map_mono -->
<g id="edge46" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.limits.prod.map_mono</title>
<g id="a_edge46"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.prod.map_mono" xlink:title="category_theory.limits.prod.map_mono">
<path fill="none" stroke="black" d="M3940.01,-929.21C3940.01,-909.14 3940.01,-872.28 3940.01,-854.34"/>
<polygon fill="black" stroke="black" points="3943.51,-854.15 3940.01,-844.15 3936.51,-854.15 3943.51,-854.15"/>
</a>
</g>
</g>
<!-- category_theory.limits.cokernel.of_kernel_of_mono -->
<g id="node26" class="node">
<title>category_theory.limits.cokernel.of_kernel_of_mono</title>
<g id="a_node26"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.cokernel.of_kernel_of_mono" xlink:title="category_theory.limits.cokernel.of_kernel_of_mono">
<ellipse fill="black" stroke="black" cx="4360.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.limits.cokernel.of_kernel_of_mono -->
<g id="edge47" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.limits.cokernel.of_kernel_of_mono</title>
<g id="a_edge47"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.cokernel.of_kernel_of_mono" xlink:title="category_theory.limits.cokernel.of_kernel_of_mono">
<path fill="none" stroke="black" d="M4030.31,-930.86C4111.71,-918.21 4233.81,-894.89 4335.01,-857.48 4340.61,-855.43 4346.41,-852.33 4351.01,-849.62"/>
<polygon fill="black" stroke="black" points="4353.22,-852.37 4359.81,-844.08 4349.49,-846.45 4353.22,-852.37"/>
</a>
</g>
</g>
<!-- category_theory.strong_epi.has_lift -->
<g id="node27" class="node">
<title>category_theory.strong_epi.has_lift</title>
<g id="a_node27"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_epi.has_lift" xlink:title="category_theory.strong_epi.has_lift">
<ellipse fill="black" stroke="black" cx="3785.01" cy="-337.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.strong_epi.has_lift -->
<g id="edge48" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.strong_epi.has_lift</title>
<g id="a_edge48"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_epi.has_lift" xlink:title="category_theory.strong_epi.has_lift">
<path fill="none" stroke="black" d="M3971.41,-929.4C3999.51,-915.53 4039.61,-891.24 4061.01,-857.48 4164.91,-694.01 4228.21,-577.86 4110.01,-424.48 4069.61,-372.1 3845.91,-345.44 3795.21,-340.02"/>
<polygon fill="black" stroke="black" points="3795.42,-336.52 3785.11,-338.98 3794.7,-343.49 3795.42,-336.52"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_pullback_of_comp_mono -->
<g id="node28" class="node">
<title>category_theory.limits.has_pullback_of_comp_mono</title>
<g id="a_node28"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pullback_of_comp_mono" xlink:title="category_theory.limits.has_pullback_of_comp_mono">
<ellipse fill="black" stroke="black" cx="3760.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.limits.has_pullback_of_comp_mono -->
<g id="edge49" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.limits.has_pullback_of_comp_mono</title>
<g id="a_edge49"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pullback_of_comp_mono" xlink:title="category_theory.limits.has_pullback_of_comp_mono">
<path fill="none" stroke="black" d="M3849.81,-933.44C3757.31,-921.57 3622.61,-897.79 3591.01,-857.48 3583.01,-847.34 3584.11,-839.35 3591.01,-828.48 3631.91,-764.45 3683.41,-799.43 3746.01,-756.48 3748.51,-754.76 3751.01,-752.58 3753.11,-750.48"/>
<polygon fill="black" stroke="black" points="3755.72,-752.81 3759.91,-743.08 3750.57,-748.08 3755.72,-752.81"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_kernel_comp_mono -->
<g id="node29" class="node">
<title>category_theory.limits.has_kernel_comp_mono</title>
<g id="a_node29"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_kernel_comp_mono" xlink:title="category_theory.limits.has_kernel_comp_mono">
<ellipse fill="black" stroke="black" cx="4876.01" cy="-438.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.limits.has_kernel_comp_mono -->
<g id="edge50" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.limits.has_kernel_comp_mono</title>
<g id="a_edge50"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_kernel_comp_mono" xlink:title="category_theory.limits.has_kernel_comp_mono">
<path fill="none" stroke="black" d="M4030.31,-942.68C4221.81,-940.64 4661.81,-928.16 4791.01,-857.48 4841.21,-830 4852.21,-810.56 4871.01,-756.48 4875.21,-744.31 4872.11,-740.32 4871.01,-727.48 4867.21,-682.12 4873.71,-667.53 4854.01,-626.48 4831.01,-578.55 4769.61,-574.55 4790.01,-525.48 4806.01,-487.02 4848.61,-456.94 4867.21,-445.26"/>
<polygon fill="black" stroke="black" points="4869.22,-448.14 4876.01,-440.01 4865.63,-442.13 4869.22,-448.14"/>
</a>
</g>
</g>
<!-- category_theory.abelian.mono_pushout_of_mono_g -->
<g id="node30" class="node">
<title>category_theory.abelian.mono_pushout_of_mono_g</title>
<g id="a_node30"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.mono_pushout_of_mono_g" xlink:title="category_theory.abelian.mono_pushout_of_mono_g">
<ellipse fill="black" stroke="black" cx="2561.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.abelian.mono_pushout_of_mono_g -->
<g id="edge51" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.abelian.mono_pushout_of_mono_g</title>
<g id="a_edge51"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.mono_pushout_of_mono_g" xlink:title="category_theory.abelian.mono_pushout_of_mono_g">
<path fill="none" stroke="black" d="M3850.01,-941.03C3563.11,-934.18 2682.61,-908.83 2566.01,-857.48 2564.21,-856.68 2562.41,-855.52 2561.01,-854.23"/>
<polygon fill="black" stroke="black" points="2564.5,-853.85 2560.61,-843.99 2557.51,-854.12 2564.5,-853.85"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_equalizer_comp_mono -->
<g id="node31" class="node">
<title>category_theory.limits.has_equalizer_comp_mono</title>
<g id="a_node31"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_equalizer_comp_mono" xlink:title="category_theory.limits.has_equalizer_comp_mono">
<ellipse fill="black" stroke="black" cx="3007.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.mono&#45;&gt;category_theory.limits.has_equalizer_comp_mono -->
<g id="edge52" class="edge">
<title>category_theory.mono&#45;&gt;category_theory.limits.has_equalizer_comp_mono</title>
<g id="a_edge52"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_equalizer_comp_mono" xlink:title="category_theory.limits.has_equalizer_comp_mono">
<path fill="none" stroke="black" d="M3849.71,-942.11C3648.01,-938.96 3167.01,-924.44 3021.01,-857.48 3018.21,-856.21 3015.71,-854.17 3013.51,-852.05"/>
<polygon fill="black" stroke="black" points="3016.11,-849.69 3007.11,-844.09 3010.65,-854.08 3016.11,-849.69"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.mono -->
<g id="edge53" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.mono</title>
<g id="a_edge53"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_iso.mono_of_iso" xlink:title="category_theory.is_iso.mono_of_iso">
<path fill="none" stroke="black" d="M4582.71,-756.6C4473.91,-792.29 4148.41,-888.4 4006.51,-926.81"/>
<polygon fill="black" stroke="black" points="4005.36,-923.49 3996.61,-929.47 4007.18,-930.26 4005.36,-923.49"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.is_iso -->
<g id="edge54" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.is_iso</title>
<g id="a_edge54"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/Mon_.quiver.hom.hom.category_theory.is_iso" xlink:title="Mon_.quiver.hom.hom.category_theory.is_iso">
<path fill="none" stroke="black" d="M4716.21,-745.13C4727.01,-744.54 4734.01,-743.48 4734.01,-741.98 4734.01,-741.02 4731.11,-740.24 4726.21,-739.65"/>
<polygon fill="black" stroke="black" points="4726.47,-736.16 4716.21,-738.83 4725.89,-743.14 4726.47,-736.16"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.is_iso -->
<g id="edge55" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.is_iso</title>
<g id="a_edge55"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.map_is_iso" xlink:title="category_theory.functor.map_is_iso">
<path fill="none" stroke="black" d="M4716.21,-749.24C4737.01,-748.5 4752.01,-746.08 4752.01,-741.98 4752.01,-738.58 4741.71,-736.34 4726.31,-735.25"/>
<polygon fill="black" stroke="black" points="4726.38,-731.75 4716.21,-734.72 4726.02,-738.74 4726.38,-731.75"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.is_iso -->
<g id="edge56" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.is_iso</title>
<g id="a_edge56"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_iso_unop" xlink:title="category_theory.is_iso_unop">
<path fill="none" stroke="black" d="M4716.31,-753.22C4746.41,-752.96 4770.01,-749.22 4770.01,-741.98 4770.01,-735.59 4751.61,-731.92 4726.61,-730.98"/>
<polygon fill="black" stroke="black" points="4726.39,-727.47 4716.31,-730.74 4726.23,-734.47 4726.39,-727.47"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.is_iso -->
<g id="edge57" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.is_iso</title>
<g id="a_edge57"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.nat_iso.is_iso_app_of_is_iso" xlink:title="category_theory.nat_iso.is_iso_app_of_is_iso">
<path fill="none" stroke="black" d="M4704.61,-756.5C4748.61,-758.62 4788.01,-753.78 4788.01,-741.98 4788.01,-731.1 4754.51,-726.14 4714.81,-727.09"/>
<polygon fill="black" stroke="black" points="4714.48,-723.6 4704.61,-727.46 4714.73,-730.6 4714.48,-723.6"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.is_iso -->
<g id="edge58" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.is_iso</title>
<g id="a_edge58"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.PresheafedSpace.stalk_map.is_iso" xlink:title="algebraic_geometry.PresheafedSpace.stalk_map.is_iso">
<path fill="none" stroke="black" d="M4677.21,-756.54C4738.01,-765.24 4806.01,-760.39 4806.01,-741.98 4806.01,-724.58 4745.31,-719.29 4687.21,-726.11"/>
<polygon fill="black" stroke="black" points="4686.67,-722.65 4677.21,-727.42 4687.58,-729.59 4686.67,-722.65"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.epi -->
<g id="edge59" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.epi</title>
<g id="a_edge59"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_iso.epi_of_iso" xlink:title="category_theory.is_iso.epi_of_iso">
<path fill="none" stroke="black" d="M4520.01,-739.84C4151.21,-734.92 2868.41,-713.07 2805.01,-655.48 2720.51,-578.74 2742.11,-421.11 2767.81,-362.02"/>
<polygon fill="black" stroke="black" points="2771.08,-363.31 2772.31,-352.79 2764.79,-360.24 2771.08,-363.31"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso -->
<g id="edge60" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso</title>
<g id="a_edge60"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso" xlink:title="category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso">
<path fill="none" stroke="black" d="M4519.81,-740.92C4329.01,-739.25 3916.71,-727.28 3798.01,-655.48 3796.31,-654.45 3794.81,-652.95 3793.81,-651.33"/>
<polygon fill="black" stroke="black" points="3797.09,-652.57 3797.61,-641.99 3790.6,-649.93 3797.09,-652.57"/>
</a>
</g>
</g>
<!-- category_theory.strong_mono -->
<g id="node32" class="node">
<title>category_theory.strong_mono</title>
<g id="a_node32"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_mono" xlink:title="category_theory.strong_mono">
<polygon fill="none" stroke="black" points="4103.51,-453.98 3862.51,-453.98 3862.51,-422.98 4103.51,-422.98 4103.51,-453.98"/>
<text text-anchor="middle" x="3983.01" y="-434.78" font-family="Courier,monospace" font-size="14.00">category_theory.strong_mono</text>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.strong_mono -->
<g id="edge61" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.strong_mono</title>
<g id="a_edge61"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_mono_of_is_iso" xlink:title="category_theory.strong_mono_of_is_iso">
<path fill="none" stroke="black" d="M4519.81,-737.02C4435.21,-729.77 4312.51,-709.81 4220.01,-655.48 4153.71,-616.55 4163.31,-576.68 4106.01,-525.48 4077.21,-499.75 4040.41,-475.1 4014.61,-458.94"/>
<polygon fill="black" stroke="black" points="4016.35,-455.9 4006.01,-453.59 4012.66,-461.84 4016.35,-455.9"/>
</a>
</g>
</g>
<!-- algebraic_geometry.PresheafedSpace.is_open_immersion -->
<g id="node33" class="node">
<title>algebraic_geometry.PresheafedSpace.is_open_immersion</title>
<g id="a_node33"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.PresheafedSpace.is_open_immersion" xlink:title="algebraic_geometry.PresheafedSpace.is_open_immersion">
<polygon fill="none" stroke="black" points="5679.51,-554.98 5228.51,-554.98 5228.51,-523.98 5679.51,-523.98 5679.51,-554.98"/>
<text text-anchor="middle" x="5454.01" y="-535.78" font-family="Courier,monospace" font-size="14.00">algebraic_geometry.PresheafedSpace.is_open_immersion</text>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;algebraic_geometry.PresheafedSpace.is_open_immersion -->
<g id="edge62" class="edge">
<title>category_theory.is_iso&#45;&gt;algebraic_geometry.PresheafedSpace.is_open_immersion</title>
<g id="a_edge62"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.PresheafedSpace.is_open_immersion.of_is_iso" xlink:title="algebraic_geometry.PresheafedSpace.is_open_immersion.of_is_iso">
<path fill="none" stroke="black" d="M4675.41,-727.42C4749.31,-711.03 4881.31,-682.3 4994.01,-655.48 5134.11,-622.14 5297.91,-579.69 5387.41,-557"/>
<polygon fill="black" stroke="black" points="5388.29,-560.39 5397.11,-554.53 5386.56,-553.61 5388.29,-560.39"/>
</a>
</g>
</g>
<!-- category_theory.monoidal_category.tensor_is_iso -->
<g id="node34" class="node">
<title>category_theory.monoidal_category.tensor_is_iso</title>
<g id="a_node34"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.monoidal_category.tensor_is_iso" xlink:title="category_theory.monoidal_category.tensor_is_iso">
<ellipse fill="black" stroke="black" cx="4809.01" cy="-640.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.monoidal_category.tensor_is_iso -->
<g id="edge63" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.monoidal_category.tensor_is_iso</title>
<g id="a_edge63"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.monoidal_category.tensor_is_iso" xlink:title="category_theory.monoidal_category.tensor_is_iso">
<path fill="none" stroke="black" d="M4649.21,-727.39C4684.81,-713.91 4741.71,-690.22 4782.01,-655.48 4786.21,-651.87 4789.31,-645.85 4798.61,-643.25"/>
<polygon fill="black" stroke="black" points="4799.13,-646.71 4808.61,-641.98 4798.25,-639.77 4799.13,-646.71"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.monoidal_category.tensor_is_iso -->
<g id="edge64" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.monoidal_category.tensor_is_iso</title>
<g id="a_edge64"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.monoidal_category.tensor_is_iso" xlink:title="category_theory.monoidal_category.tensor_is_iso">
<path fill="none" stroke="black" d="M4663.41,-727.39C4702.81,-713.91 4759.71,-690.22 4800.01,-655.48 4801.51,-654.17 4802.91,-652.54 4804.11,-650.88"/>
<polygon fill="black" stroke="black" points="4807.21,-652.52 4809.01,-642.08 4801.09,-649.11 4807.21,-652.52"/>
</a>
</g>
</g>
<!-- category_theory.is_iso.comp_is_iso -->
<g id="node35" class="node">
<title>category_theory.is_iso.comp_is_iso</title>
<g id="a_node35"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_iso.comp_is_iso" xlink:title="category_theory.is_iso.comp_is_iso">
<ellipse fill="black" stroke="black" cx="4827.01" cy="-640.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.is_iso.comp_is_iso -->
<g id="edge65" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.is_iso.comp_is_iso</title>
<g id="a_edge65"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_iso.comp_is_iso" xlink:title="category_theory.is_iso.comp_is_iso">
<path fill="none" stroke="black" d="M4656.91,-727.37C4696.51,-714.35 4756.91,-691.32 4800.01,-655.48 4804.31,-651.94 4807.31,-645.88 4816.61,-643.26"/>
<polygon fill="black" stroke="black" points="4817.14,-646.72 4826.61,-641.98 4816.25,-639.78 4817.14,-646.72"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.is_iso.comp_is_iso -->
<g id="edge66" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.is_iso.comp_is_iso</title>
<g id="a_edge66"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_iso.comp_is_iso" xlink:title="category_theory.is_iso.comp_is_iso">
<path fill="none" stroke="black" d="M4671.41,-727.37C4714.51,-714.35 4774.91,-691.32 4818.01,-655.48 4819.51,-654.2 4820.91,-652.58 4822.11,-650.92"/>
<polygon fill="black" stroke="black" points="4825.23,-652.52 4827.01,-642.08 4819.1,-649.13 4825.23,-652.52"/>
</a>
</g>
</g>
<!-- algebraic_geometry.is_open_immersion -->
<g id="node36" class="node">
<title>algebraic_geometry.is_open_immersion</title>
<g id="a_node36"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.is_open_immersion" xlink:title="algebraic_geometry.is_open_immersion">
<polygon fill="none" stroke="black" points="4576.01,-655.98 4260.01,-655.98 4260.01,-624.98 4576.01,-624.98 4576.01,-655.98"/>
<text text-anchor="middle" x="4418.01" y="-636.78" font-family="Courier,monospace" font-size="14.00">algebraic_geometry.is_open_immersion</text>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;algebraic_geometry.is_open_immersion -->
<g id="edge67" class="edge">
<title>category_theory.is_iso&#45;&gt;algebraic_geometry.is_open_immersion</title>
<g id="a_edge67"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.is_open_immersion.of_is_iso" xlink:title="algebraic_geometry.is_open_immersion.of_is_iso">
<path fill="none" stroke="black" d="M4590.61,-727.42C4555.31,-709.92 4493.61,-679.41 4454.41,-659.98"/>
<polygon fill="black" stroke="black" points="4455.93,-656.82 4445.41,-655.53 4452.83,-663.1 4455.93,-656.82"/>
</a>
</g>
</g>
<!-- category_theory.split_mono -->
<g id="node37" class="node">
<title>category_theory.split_mono</title>
<g id="a_node37"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.split_mono" xlink:title="category_theory.split_mono">
<polygon fill="none" stroke="black" points="3319.01,-655.98 3087.01,-655.98 3087.01,-624.98 3319.01,-624.98 3319.01,-655.98"/>
<text text-anchor="middle" x="3203.01" y="-636.78" font-family="Courier,monospace" font-size="14.00">category_theory.split_mono</text>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.split_mono -->
<g id="edge68" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.split_mono</title>
<g id="a_edge68"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.split_mono.of_iso" xlink:title="category_theory.split_mono.of_iso">
<path fill="none" stroke="black" d="M4519.71,-735.31C4305.91,-722.77 3782.71,-690.98 3345.01,-655.48 3339.41,-655.03 3333.81,-654.55 3328.01,-654.06"/>
<polygon fill="black" stroke="black" points="3327.98,-650.54 3317.71,-653.16 3327.37,-657.52 3327.98,-650.54"/>
</a>
</g>
</g>
<!-- category_theory.split_epi -->
<g id="node38" class="node">
<title>category_theory.split_epi</title>
<g id="a_node38"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.split_epi" xlink:title="category_theory.split_epi">
<polygon fill="none" stroke="black" points="2602.01,-655.98 2378.01,-655.98 2378.01,-624.98 2602.01,-624.98 2602.01,-655.98"/>
<text text-anchor="middle" x="2490.01" y="-636.78" font-family="Courier,monospace" font-size="14.00">category_theory.split_epi</text>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.split_epi -->
<g id="edge69" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.split_epi</title>
<g id="a_edge69"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.split_epi.of_iso" xlink:title="category_theory.split_epi.of_iso">
<path fill="none" stroke="black" d="M4519.81,-737.19C4237.71,-726.18 3401.11,-692.6 2707.01,-655.48 2675.81,-653.81 2642.11,-651.81 2610.71,-649.87"/>
<polygon fill="black" stroke="black" points="2610.91,-646.38 2600.71,-649.24 2610.47,-653.36 2610.91,-646.38"/>
</a>
</g>
</g>
<!-- algebraic_geometry.SheafedSpace.is_open_immersion -->
<g id="node39" class="node">
<title>algebraic_geometry.SheafedSpace.is_open_immersion</title>
<g id="a_node39"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.SheafedSpace.is_open_immersion" xlink:title="algebraic_geometry.SheafedSpace.is_open_immersion">
<polygon fill="none" stroke="black" points="5672.01,-655.98 5246.01,-655.98 5246.01,-624.98 5672.01,-624.98 5672.01,-655.98"/>
<text text-anchor="middle" x="5459.01" y="-636.78" font-family="Courier,monospace" font-size="14.00">algebraic_geometry.SheafedSpace.is_open_immersion</text>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;algebraic_geometry.SheafedSpace.is_open_immersion -->
<g id="edge70" class="edge">
<title>category_theory.is_iso&#45;&gt;algebraic_geometry.SheafedSpace.is_open_immersion</title>
<g id="a_edge70"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.SheafedSpace.is_open_immersion.of_is_iso" xlink:title="algebraic_geometry.SheafedSpace.is_open_immersion.of_is_iso">
<path fill="none" stroke="black" d="M4716.11,-729.43C4869.41,-711.39 5165.51,-676.53 5333.91,-656.7"/>
<polygon fill="black" stroke="black" points="5334.59,-660.15 5344.11,-655.51 5333.78,-653.19 5334.59,-660.15"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image_map -->
<g id="node40" class="node">
<title>category_theory.limits.has_image_map</title>
<g id="a_node40"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_map" xlink:title="category_theory.limits.has_image_map">
<polygon fill="none" stroke="black" points="3668.01,-655.98 3352.01,-655.98 3352.01,-624.98 3668.01,-624.98 3668.01,-655.98"/>
<text text-anchor="middle" x="3510.01" y="-636.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_image_map</text>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.has_image_map -->
<g id="edge71" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.has_image_map</title>
<g id="a_edge71"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_map_of_is_iso" xlink:title="category_theory.limits.has_image_map_of_is_iso">
<path fill="none" stroke="black" d="M4519.71,-732.19C4328.41,-715.1 3904.61,-677.24 3671.51,-656.41"/>
<polygon fill="black" stroke="black" points="3671.49,-652.89 3661.21,-655.49 3670.86,-659.87 3671.49,-652.89"/>
</a>
</g>
</g>
<!-- algebraic_geometry.LocallyRingedSpace.is_open_immersion -->
<g id="node41" class="node">
<title>algebraic_geometry.LocallyRingedSpace.is_open_immersion</title>
<g id="a_node41"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.LocallyRingedSpace.is_open_immersion" xlink:title="algebraic_geometry.LocallyRingedSpace.is_open_immersion">
<polygon fill="none" stroke="black" points="4706.01,-554.98 4230.01,-554.98 4230.01,-523.98 4706.01,-523.98 4706.01,-554.98"/>
<text text-anchor="middle" x="4468.01" y="-535.78" font-family="Courier,monospace" font-size="14.00">algebraic_geometry.LocallyRingedSpace.is_open_immersion</text>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;algebraic_geometry.LocallyRingedSpace.is_open_immersion -->
<g id="edge72" class="edge">
<title>category_theory.is_iso&#45;&gt;algebraic_geometry.LocallyRingedSpace.is_open_immersion</title>
<g id="a_edge72"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.LocallyRingedSpace.is_open_immersion.of_is_iso" xlink:title="algebraic_geometry.LocallyRingedSpace.is_open_immersion.of_is_iso">
<path fill="none" stroke="black" d="M4619.41,-727.39C4621.11,-704.59 4621.41,-658.05 4601.01,-626.48 4580.61,-594.85 4543.91,-572.57 4514.21,-558.7"/>
<polygon fill="black" stroke="black" points="4515.37,-555.38 4504.81,-554.49 4512.51,-561.77 4515.37,-555.38"/>
</a>
</g>
</g>
<!-- category_theory.strong_epi -->
<g id="node42" class="node">
<title>category_theory.strong_epi</title>
<g id="a_node42"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_epi" xlink:title="category_theory.strong_epi">
<polygon fill="none" stroke="black" points="3848.01,-453.98 3616.01,-453.98 3616.01,-422.98 3848.01,-422.98 3848.01,-453.98"/>
<text text-anchor="middle" x="3732.01" y="-434.78" font-family="Courier,monospace" font-size="14.00">category_theory.strong_epi</text>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.strong_epi -->
<g id="edge73" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.strong_epi</title>
<g id="a_edge73"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_epi_of_is_iso" xlink:title="category_theory.strong_epi_of_is_iso">
<path fill="none" stroke="black" d="M4519.61,-735.87C4427.91,-727.9 4289.11,-707.54 4180.01,-655.48 4098.91,-616.75 4104.31,-567.87 4025.01,-525.48 3960.31,-490.87 3879.81,-468.68 3819.61,-455.6"/>
<polygon fill="black" stroke="black" points="3820.22,-452.15 3809.71,-453.5 3818.77,-459 3820.22,-452.15"/>
</a>
</g>
</g>
<!-- quasi_iso -->
<g id="node43" class="node">
<title>quasi_iso</title>
<g id="a_node43"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/quasi_iso" xlink:title="quasi_iso">
<polygon fill="none" stroke="black" points="4738.01,-655.98 4648.01,-655.98 4648.01,-624.98 4738.01,-624.98 4738.01,-655.98"/>
<text text-anchor="middle" x="4693.01" y="-636.78" font-family="Courier,monospace" font-size="14.00">quasi_iso</text>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;quasi_iso -->
<g id="edge74" class="edge">
<title>category_theory.is_iso&#45;&gt;quasi_iso</title>
<g id="a_edge74"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/quasi_iso_of_iso" xlink:title="quasi_iso_of_iso">
<path fill="none" stroke="black" d="M4623.61,-727.21C4633.91,-710.66 4654.81,-682.7 4671.11,-663.34"/>
<polygon fill="black" stroke="black" points="4673.9,-665.47 4677.81,-655.63 4668.61,-660.88 4673.9,-665.47"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image_iso_comp -->
<g id="node44" class="node">
<title>category_theory.limits.has_image_iso_comp</title>
<g id="a_node44"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_iso_comp" xlink:title="category_theory.limits.has_image_iso_comp">
<ellipse fill="black" stroke="black" cx="2361.01" cy="-640.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.has_image_iso_comp -->
<g id="edge75" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.has_image_iso_comp</title>
<g id="a_edge75"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_iso_comp" xlink:title="category_theory.limits.has_image_iso_comp">
<path fill="none" stroke="black" d="M4519.91,-739.73C4099.41,-734.06 2465.01,-708.65 2370.01,-655.48 2368.21,-654.45 2366.61,-652.86 2365.41,-651.13"/>
<polygon fill="black" stroke="black" points="2368.54,-649.55 2361.01,-642.09 2362.24,-652.61 2368.54,-649.55"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image_comp_iso -->
<g id="node45" class="node">
<title>category_theory.limits.has_image_comp_iso</title>
<g id="a_node45"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_comp_iso" xlink:title="category_theory.limits.has_image_comp_iso">
<ellipse fill="black" stroke="black" cx="2268.01" cy="-438.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.has_image_comp_iso -->
<g id="edge76" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.has_image_comp_iso</title>
<g id="a_edge76"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_comp_iso" xlink:title="category_theory.limits.has_image_comp_iso">
<path fill="none" stroke="black" d="M4519.91,-738.86C4098.21,-729.56 2455.81,-691.18 2352.01,-655.48 2279.41,-630.52 2246.91,-622.78 2212.01,-554.48 2191.21,-513.76 2240.51,-464.14 2260.31,-446.55"/>
<polygon fill="black" stroke="black" points="2262.6,-449.2 2267.91,-440.03 2258.05,-443.88 2262.6,-449.2"/>
</a>
</g>
</g>
<!-- category_theory.limits.is_iso_coprod -->
<g id="node46" class="node">
<title>category_theory.limits.is_iso_coprod</title>
<g id="a_node46"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.is_iso_coprod" xlink:title="category_theory.limits.is_iso_coprod">
<ellipse fill="black" stroke="black" cx="4845.01" cy="-640.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.is_iso_coprod -->
<g id="edge77" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.is_iso_coprod</title>
<g id="a_edge77"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.is_iso_coprod" xlink:title="category_theory.limits.is_iso_coprod">
<path fill="none" stroke="black" d="M4665.21,-727.43C4708.71,-714.83 4772.31,-692.34 4818.01,-655.48 4822.31,-652.01 4825.31,-645.91 4834.61,-643.27"/>
<polygon fill="black" stroke="black" points="4835.14,-646.73 4844.61,-641.98 4834.25,-639.79 4835.14,-646.73"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.is_iso_coprod -->
<g id="edge78" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.is_iso_coprod</title>
<g id="a_edge78"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.is_iso_coprod" xlink:title="category_theory.limits.is_iso_coprod">
<path fill="none" stroke="black" d="M4680.01,-727.43C4726.71,-714.83 4790.31,-692.34 4836.01,-655.48 4837.61,-654.22 4839.01,-652.62 4840.11,-650.96"/>
<polygon fill="black" stroke="black" points="4843.25,-652.53 4845.01,-642.08 4837.12,-649.14 4843.25,-652.53"/>
</a>
</g>
</g>
<!-- category_theory.limits.pushout.map_is_iso -->
<g id="node47" class="node">
<title>category_theory.limits.pushout.map_is_iso</title>
<g id="a_node47"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pushout.map_is_iso" xlink:title="category_theory.limits.pushout.map_is_iso">
<ellipse fill="black" stroke="black" cx="4755.01" cy="-640.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.pushout.map_is_iso -->
<g id="edge79" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.pushout.map_is_iso</title>
<g id="a_edge79"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pushout.map_is_iso" xlink:title="category_theory.limits.pushout.map_is_iso">
<path fill="none" stroke="black" d="M4624.61,-727.25C4645.31,-712.21 4688.41,-686.11 4719.01,-655.48 4723.31,-651.15 4726.81,-644.45 4744.21,-642.52"/>
<polygon fill="black" stroke="black" points="4744.91,-645.99 4754.71,-641.98 4744.55,-639 4744.91,-645.99"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.pushout.map_is_iso -->
<g id="edge80" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.pushout.map_is_iso</title>
<g id="a_edge80"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pushout.map_is_iso" xlink:title="category_theory.limits.pushout.map_is_iso">
<path fill="none" stroke="black" d="M4638.01,-727.25C4663.31,-712.21 4706.41,-686.11 4737.01,-655.48 4739.71,-652.73 4742.11,-649.03 4745.21,-646.2"/>
<polygon fill="black" stroke="black" points="4746.92,-649.27 4754.61,-641.99 4744.06,-642.88 4746.92,-649.27"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.pushout.map_is_iso -->
<g id="edge81" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.pushout.map_is_iso</title>
<g id="a_edge81"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pushout.map_is_iso" xlink:title="category_theory.limits.pushout.map_is_iso">
<path fill="none" stroke="black" d="M4651.21,-727.39C4681.01,-712.37 4724.31,-686.2 4755.01,-655.48 4756.11,-654.38 4757.11,-653.13 4758.01,-651.84"/>
<polygon fill="black" stroke="black" points="4761.35,-650.77 4755.41,-641.99 4754.58,-652.55 4761.35,-650.77"/>
</a>
</g>
</g>
<!-- category_theory.limits.category_theory.category_struct.comp.has_image -->
<g id="node48" class="node">
<title>category_theory.limits.category_theory.category_struct.comp.has_image</title>
<g id="a_node48"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.category_struct.comp.has_image" xlink:title="category_theory.limits.category_theory.category_struct.comp.has_image">
<ellipse fill="black" stroke="black" cx="2361.01" cy="-438.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.category_theory.category_struct.comp.has_image -->
<g id="edge82" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.category_theory.category_struct.comp.has_image</title>
<g id="a_edge82"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.category_struct.comp.has_image" xlink:title="category_theory.limits.category_theory.category_struct.comp.has_image">
<path fill="none" stroke="black" d="M4519.91,-739.3C4158.61,-732.73 2915.31,-706.59 2745.01,-655.48 2637.01,-623.04 2625.61,-580.22 2527.01,-525.48 2468.11,-492.81 2395.51,-456.87 2370.21,-444.47"/>
<polygon fill="black" stroke="black" points="2371.63,-441.27 2361.11,-440.01 2368.55,-447.55 2371.63,-441.27"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_kernel_iso_comp -->
<g id="node49" class="node">
<title>category_theory.limits.has_kernel_iso_comp</title>
<g id="a_node49"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_kernel_iso_comp" xlink:title="category_theory.limits.has_kernel_iso_comp">
<ellipse fill="black" stroke="black" cx="4994.01" cy="-640.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.has_kernel_iso_comp -->
<g id="edge83" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.has_kernel_iso_comp</title>
<g id="a_edge83"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_kernel_iso_comp" xlink:title="category_theory.limits.has_kernel_iso_comp">
<path fill="none" stroke="black" d="M4669.51,-727.42C4759.41,-703.76 4939.61,-656.31 4984.01,-644.62"/>
<polygon fill="black" stroke="black" points="4985.05,-647.97 4993.81,-642.02 4983.25,-641.2 4985.05,-647.97"/>
</a>
</g>
</g>
<!-- category_theory.limits.pullback.map_is_iso -->
<g id="node50" class="node">
<title>category_theory.limits.pullback.map_is_iso</title>
<g id="a_node50"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pullback.map_is_iso" xlink:title="category_theory.limits.pullback.map_is_iso">
<ellipse fill="black" stroke="black" cx="4773.01" cy="-640.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.pullback.map_is_iso -->
<g id="edge84" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.pullback.map_is_iso</title>
<g id="a_edge84"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pullback.map_is_iso" xlink:title="category_theory.limits.pullback.map_is_iso">
<path fill="none" stroke="black" d="M4629.81,-727.26C4654.91,-712.75 4703.01,-687.53 4737.01,-655.48 4741.41,-651.28 4744.81,-644.49 4762.21,-642.53"/>
<polygon fill="black" stroke="black" points="4762.91,-646 4772.71,-641.98 4762.54,-639.01 4762.91,-646"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.pullback.map_is_iso -->
<g id="edge85" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.pullback.map_is_iso</title>
<g id="a_edge85"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pullback.map_is_iso" xlink:title="category_theory.limits.pullback.map_is_iso">
<path fill="none" stroke="black" d="M4643.21,-727.4C4672.61,-712.91 4720.91,-687.63 4755.01,-655.48 4757.81,-652.82 4760.21,-649.11 4763.21,-646.25"/>
<polygon fill="black" stroke="black" points="4764.95,-649.31 4772.61,-641.99 4762.06,-642.93 4764.95,-649.31"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.pullback.map_is_iso -->
<g id="edge86" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.pullback.map_is_iso</title>
<g id="a_edge86"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pullback.map_is_iso" xlink:title="category_theory.limits.pullback.map_is_iso">
<path fill="none" stroke="black" d="M4656.91,-727.4C4690.61,-712.91 4738.91,-687.63 4773.01,-655.48 4774.21,-654.34 4775.31,-653 4776.31,-651.63"/>
<polygon fill="black" stroke="black" points="4779.65,-650.56 4773.41,-641.99 4772.94,-652.57 4779.65,-650.56"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_cokernel_comp_iso -->
<g id="node51" class="node">
<title>category_theory.limits.has_cokernel_comp_iso</title>
<g id="a_node51"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_cokernel_comp_iso" xlink:title="category_theory.limits.has_cokernel_comp_iso">
<ellipse fill="black" stroke="black" cx="4386.01" cy="-49.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.has_cokernel_comp_iso -->
<g id="edge87" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.has_cokernel_comp_iso</title>
<g id="a_edge87"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_cokernel_comp_iso" xlink:title="category_theory.limits.has_cokernel_comp_iso">
<path fill="none" stroke="black" d="M4519.71,-729.33C4425.01,-716.16 4290.71,-691.72 4253.01,-655.48 4182.31,-587.57 4206.01,-538.01 4206.01,-439.98 4206.01,-439.98 4206.01,-439.98 4206.01,-235.98 4206.01,-184.4 4193.41,-162.23 4225.01,-121.48 4264.31,-70.87 4347.21,-55.53 4375.91,-51.64"/>
<polygon fill="black" stroke="black" points="4376.38,-55.11 4385.91,-50.48 4375.58,-48.15 4376.38,-55.11"/>
</a>
</g>
</g>
<!-- category_theory.limits.is_iso_prod -->
<g id="node52" class="node">
<title>category_theory.limits.is_iso_prod</title>
<g id="a_node52"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.is_iso_prod" xlink:title="category_theory.limits.is_iso_prod">
<ellipse fill="black" stroke="black" cx="4791.01" cy="-640.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.is_iso_prod -->
<g id="edge88" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.is_iso_prod</title>
<g id="a_edge88"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.is_iso_prod" xlink:title="category_theory.limits.is_iso_prod">
<path fill="none" stroke="black" d="M4642.51,-727.35C4674.01,-713.38 4726.71,-688.95 4764.01,-655.48 4768.11,-651.78 4771.21,-645.81 4780.61,-643.23"/>
<polygon fill="black" stroke="black" points="4781.13,-646.69 4790.61,-641.98 4780.26,-639.75 4781.13,-646.69"/>
</a>
</g>
</g>
<!-- category_theory.is_iso&#45;&gt;category_theory.limits.is_iso_prod -->
<g id="edge89" class="edge">
<title>category_theory.is_iso&#45;&gt;category_theory.limits.is_iso_prod</title>
<g id="a_edge89"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.is_iso_prod" xlink:title="category_theory.limits.is_iso_prod">
<path fill="none" stroke="black" d="M4656.51,-727.35C4692.01,-713.38 4744.71,-688.95 4782.01,-655.48 4783.51,-654.14 4784.91,-652.5 4786.01,-650.83"/>
<polygon fill="black" stroke="black" points="4789.09,-652.5 4791.01,-642.08 4783.01,-649.03 4789.09,-652.5"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.mono -->
<g id="edge90" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.mono</title>
<g id="a_edge90"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.unop_mono_of_epi" xlink:title="category_theory.unop_mono_of_epi">
<path fill="none" stroke="black" d="M2788.31,-352.58C2783.51,-401.64 2737.11,-571.1 2822.01,-655.48 2892.61,-725.62 2952.71,-670.14 3034.01,-727.48 3094.21,-769.96 3072.41,-821.99 3137.01,-857.48 3256.51,-923.11 3651.81,-938.41 3839.61,-941.94"/>
<polygon fill="black" stroke="black" points="3839.75,-945.44 3849.81,-942.13 3839.88,-938.44 3839.75,-945.44"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.is_iso -->
<g id="edge91" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.is_iso</title>
<g id="a_edge91"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.is_iso_factor_thru_coimage" xlink:title="category_theory.abelian.is_iso_factor_thru_coimage">
<path fill="none" stroke="black" d="M2779.31,-352.79C2762.91,-402.6 2733.61,-574.3 2823.01,-655.48 2885.51,-712.21 4131.21,-734.26 4509.81,-739.61"/>
<polygon fill="black" stroke="black" points="4509.97,-743.11 4520.01,-739.75 4510.06,-736.11 4509.97,-743.11"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.is_iso -->
<g id="edge92" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.is_iso</title>
<g id="a_edge92"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.non_preadditive_abelian.is_iso_factor_thru_coimage" xlink:title="category_theory.non_preadditive_abelian.is_iso_factor_thru_coimage">
<path fill="none" stroke="black" d="M2786.21,-352.79C2780.91,-402.6 2751.61,-574.3 2841.01,-655.48 2903.11,-711.86 4133.61,-733.99 4509.81,-739.51"/>
<polygon fill="black" stroke="black" points="4509.76,-743.01 4519.81,-739.66 4509.87,-736.01 4509.76,-743.01"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.is_iso -->
<g id="edge93" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.is_iso</title>
<g id="a_edge93"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.category_theory.limits.cokernel.desc.category_theory.is_iso" xlink:title="category_theory.abelian.category_theory.limits.cokernel.desc.category_theory.is_iso">
<path fill="none" stroke="black" d="M2793.21,-352.79C2798.91,-402.6 2769.61,-574.3 2859.01,-655.48 2920.71,-711.5 4136.21,-733.71 4509.91,-739.4"/>
<polygon fill="black" stroke="black" points="4509.86,-742.9 4519.91,-739.55 4509.97,-735.9 4509.86,-742.9"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.epi -->
<g id="edge94" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.epi</title>
<g id="a_edge94"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.cokernel.desc_epi" xlink:title="category_theory.limits.cokernel.desc_epi">
<path fill="none" stroke="black" d="M2871.71,-339.61C2882.41,-339.33 2889.51,-338.78 2889.51,-337.98 2889.51,-337.47 2886.61,-337.06 2881.71,-336.76"/>
<polygon fill="black" stroke="black" points="2881.85,-333.26 2871.71,-336.35 2881.56,-340.26 2881.85,-333.26"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.epi -->
<g id="edge95" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.epi</title>
<g id="a_edge95"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pushout.inr_of_epi" xlink:title="category_theory.limits.pushout.inr_of_epi">
<path fill="none" stroke="black" d="M2871.71,-341.66C2892.31,-341.38 2907.51,-340.15 2907.51,-337.98 2907.51,-336.18 2897.11,-335.03 2881.81,-334.53"/>
<polygon fill="black" stroke="black" points="2881.79,-331.03 2871.71,-334.3 2881.63,-338.03 2881.79,-331.03"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.epi -->
<g id="edge96" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.epi</title>
<g id="a_edge96"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.biprod.epi_desc_of_epi_left" xlink:title="category_theory.limits.biprod.epi_desc_of_epi_left">
<path fill="none" stroke="black" d="M2871.81,-343.6C2901.51,-343.66 2925.51,-341.79 2925.51,-337.98 2925.51,-334.62 2906.81,-332.76 2882.01,-332.42"/>
<polygon fill="black" stroke="black" points="2881.83,-328.92 2871.81,-332.36 2881.79,-335.92 2881.83,-328.92"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.epi -->
<g id="edge97" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.epi</title>
<g id="a_edge97"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.biprod.epi_desc_of_epi_right" xlink:title="category_theory.limits.biprod.epi_desc_of_epi_right">
<path fill="none" stroke="black" d="M2871.91,-345.36C2910.31,-346.07 2943.51,-343.6 2943.51,-337.98 2943.51,-332.86 2916.01,-330.36 2882.11,-330.48"/>
<polygon fill="black" stroke="black" points="2881.87,-326.98 2871.91,-330.6 2881.95,-333.98 2881.87,-326.98"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.epi -->
<g id="edge98" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.epi</title>
<g id="a_edge98"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pushout.inl_of_epi" xlink:title="category_theory.limits.pushout.inl_of_epi">
<path fill="none" stroke="black" d="M2871.81,-346.94C2918.61,-348.53 2961.51,-345.55 2961.51,-337.98 2961.51,-330.96 2924.61,-327.88 2881.91,-328.75"/>
<polygon fill="black" stroke="black" points="2881.72,-325.25 2871.81,-329.02 2881.9,-332.25 2881.72,-325.25"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.epi -->
<g id="edge99" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.epi</title>
<g id="a_edge99"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.preadditive.has_neg.neg.category_theory.epi" xlink:title="category_theory.preadditive.has_neg.neg.category_theory.epi">
<path fill="none" stroke="black" d="M2871.51,-348.34C2926.61,-351.04 2979.51,-347.59 2979.51,-337.98 2979.51,-328.97 2933.01,-325.37 2881.81,-327.19"/>
<polygon fill="black" stroke="black" points="2881.36,-323.71 2871.51,-327.62 2881.65,-330.7 2881.36,-323.71"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.epi -->
<g id="edge100" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.epi</title>
<g id="a_edge100"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.coprod.epi_desc_of_epi_right" xlink:title="category_theory.limits.coprod.epi_desc_of_epi_right">
<path fill="none" stroke="black" d="M2871.51,-349.61C2934.41,-353.56 2997.51,-349.69 2997.51,-337.98 2997.51,-326.91 2941.11,-322.85 2881.81,-325.77"/>
<polygon fill="black" stroke="black" points="2881.3,-322.29 2871.51,-326.35 2881.69,-329.28 2881.3,-322.29"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.epi -->
<g id="edge101" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.epi</title>
<g id="a_edge101"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.epi_factor_thru_coimage" xlink:title="category_theory.abelian.epi_factor_thru_coimage">
<path fill="none" stroke="black" d="M2871.61,-350.76C2942.21,-356.09 3015.51,-351.83 3015.51,-337.98 3015.51,-324.81 2949.11,-320.31 2882.01,-324.49"/>
<polygon fill="black" stroke="black" points="2881.35,-321.03 2871.61,-325.2 2881.83,-328.01 2881.35,-321.03"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.epi -->
<g id="edge102" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.epi</title>
<g id="a_edge102"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/image_to_kernel_epi_of_epi_of_zero" xlink:title="image_to_kernel_epi_of_epi_of_zero">
<path fill="none" stroke="black" d="M2871.61,-351.8C2949.61,-358.63 3033.51,-354.02 3033.51,-337.98 3033.51,-322.63 2956.71,-317.75 2881.71,-323.35"/>
<polygon fill="black" stroke="black" points="2881.3,-319.87 2871.61,-324.16 2881.86,-326.85 2881.3,-319.87"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.epi -->
<g id="edge103" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.epi</title>
<g id="a_edge103"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.coprod.epi_desc_of_epi_left" xlink:title="category_theory.limits.coprod.epi_desc_of_epi_left">
<path fill="none" stroke="black" d="M2869.31,-352.51C2955.31,-361.25 3051.51,-356.41 3051.51,-337.98 3051.51,-320.27 2962.61,-315.1 2879.41,-322.49"/>
<polygon fill="black" stroke="black" points="2878.94,-319.02 2869.31,-323.45 2879.6,-325.99 2878.94,-319.02"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_cokernel_epi_comp -->
<g id="node53" class="node">
<title>category_theory.limits.has_cokernel_epi_comp</title>
<g id="a_node53"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_cokernel_epi_comp" xlink:title="category_theory.limits.has_cokernel_epi_comp">
<ellipse fill="black" stroke="black" cx="4234.01" cy="-236.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.limits.has_cokernel_epi_comp -->
<g id="edge104" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.limits.has_cokernel_epi_comp</title>
<g id="a_edge104"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_cokernel_epi_comp" xlink:title="category_theory.limits.has_cokernel_epi_comp">
<path fill="none" stroke="black" d="M2871.71,-333.65C3085.31,-324.9 3658.21,-298.62 4134.01,-251.48 4166.91,-248.22 4205.71,-242.42 4223.81,-239.6"/>
<polygon fill="black" stroke="black" points="4224.49,-243.04 4233.81,-238.01 4223.39,-236.12 4224.49,-243.04"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_pushout -->
<g id="node54" class="node">
<title>category_theory.limits.has_pushout</title>
<g id="a_node54"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pushout" xlink:title="category_theory.limits.has_pushout">
<polygon fill="none" stroke="black" points="3140.01,-251.98 2840.01,-251.98 2840.01,-220.98 3140.01,-220.98 3140.01,-251.98"/>
<text text-anchor="middle" x="2990.01" y="-232.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_pushout</text>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.limits.has_pushout -->
<g id="edge105" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.limits.has_pushout</title>
<g id="a_edge105"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pushout_of_left_factors_epi" xlink:title="category_theory.limits.has_pushout_of_left_factors_epi">
<path fill="none" stroke="black" d="M2804.31,-323.42C2835.81,-305.81 2898.91,-275.02 2943.01,-255.61"/>
<polygon fill="black" stroke="black" points="2944.63,-258.72 2952.41,-251.53 2941.85,-252.3 2944.63,-258.72"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.limits.has_pushout -->
<g id="edge106" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.limits.has_pushout</title>
<g id="a_edge106"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pushout_of_right_factors_epi" xlink:title="category_theory.limits.has_pushout_of_right_factors_epi">
<path fill="none" stroke="black" d="M2813.91,-323.42C2850.01,-305.92 2912.91,-275.41 2952.91,-255.98"/>
<polygon fill="black" stroke="black" points="2954.64,-259.04 2962.11,-251.53 2951.59,-252.73 2954.64,-259.04"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.limits.has_pushout -->
<g id="edge107" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.limits.has_pushout</title>
<g id="a_edge107"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_cokernel_pair_of_epi" xlink:title="category_theory.limits.has_cokernel_pair_of_epi">
<path fill="none" stroke="black" d="M2823.61,-323.42C2864.11,-306.07 2926.61,-275.92 2962.71,-256.47"/>
<polygon fill="black" stroke="black" points="2964.63,-259.41 2971.71,-251.53 2961.26,-253.27 2964.63,-259.41"/>
</a>
</g>
</g>
<!-- category_theory.functor.map_epi -->
<g id="node55" class="node">
<title>category_theory.functor.map_epi</title>
<g id="a_node55"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.map_epi" xlink:title="category_theory.functor.map_epi">
<ellipse fill="black" stroke="black" cx="4270.01" cy="-236.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.functor.map_epi -->
<g id="edge108" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.functor.map_epi</title>
<g id="a_edge108"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.map_epi" xlink:title="category_theory.functor.map_epi">
<path fill="none" stroke="black" d="M2871.71,-336.4C3167.21,-333.83 4132.01,-320.25 4252.01,-251.48 4255.41,-249.55 4257.71,-245.79 4260.61,-242.72"/>
<polygon fill="black" stroke="black" points="4262.39,-245.74 4269.61,-237.99 4259.13,-239.54 4262.39,-245.74"/>
</a>
</g>
</g>
<!-- category_theory.limits.kernel.of_cokernel_of_epi -->
<g id="node56" class="node">
<title>category_theory.limits.kernel.of_cokernel_of_epi</title>
<g id="a_node56"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.kernel.of_cokernel_of_epi" xlink:title="category_theory.limits.kernel.of_cokernel_of_epi">
<ellipse fill="black" stroke="black" cx="5778.01" cy="-236.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.limits.kernel.of_cokernel_of_epi -->
<g id="edge109" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.limits.kernel.of_cokernel_of_epi</title>
<g id="a_edge109"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.kernel.of_cokernel_of_epi" xlink:title="category_theory.limits.kernel.of_cokernel_of_epi">
<path fill="none" stroke="black" d="M2871.51,-334.15C3341.71,-318.59 5597.31,-243.96 5767.81,-238.32"/>
<polygon fill="black" stroke="black" points="5768.04,-241.81 5777.91,-237.98 5767.8,-234.82 5768.04,-241.81"/>
</a>
</g>
</g>
<!-- category_theory.limits.image_subobject_comp_le_epi_of_epi -->
<g id="node57" class="node">
<title>category_theory.limits.image_subobject_comp_le_epi_of_epi</title>
<g id="a_node57"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.image_subobject_comp_le_epi_of_epi" xlink:title="category_theory.limits.image_subobject_comp_le_epi_of_epi">
<ellipse fill="black" stroke="black" cx="2768.01" cy="-236.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.limits.image_subobject_comp_le_epi_of_epi -->
<g id="edge110" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.limits.image_subobject_comp_le_epi_of_epi</title>
<g id="a_edge110"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.image_subobject_comp_le_epi_of_epi" xlink:title="category_theory.limits.image_subobject_comp_le_epi_of_epi">
<path fill="none" stroke="black" d="M2778.71,-323.21C2772.31,-303.03 2765.71,-265.86 2765.51,-248.03"/>
<polygon fill="black" stroke="black" points="2768.99,-248.54 2767.71,-238.02 2762.15,-247.04 2768.99,-248.54"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_pushout_of_epi_comp -->
<g id="node58" class="node">
<title>category_theory.limits.has_pushout_of_epi_comp</title>
<g id="a_node58"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pushout_of_epi_comp" xlink:title="category_theory.limits.has_pushout_of_epi_comp">
<ellipse fill="black" stroke="black" cx="2990.01" cy="-135.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.limits.has_pushout_of_epi_comp -->
<g id="edge111" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.limits.has_pushout_of_epi_comp</title>
<g id="a_edge111"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pushout_of_epi_comp" xlink:title="category_theory.limits.has_pushout_of_epi_comp">
<path fill="none" stroke="black" d="M2788.51,-323.4C2793.31,-300.21 2806.01,-252.56 2833.01,-222.48 2876.01,-174.48 2952.61,-148.08 2979.91,-139.83"/>
<polygon fill="black" stroke="black" points="2981.24,-143.09 2989.91,-137 2979.34,-136.36 2981.24,-143.09"/>
</a>
</g>
</g>
<!-- category_theory.abelian.of_coimage_image_comparison_is_iso.m.category_theory.is_iso -->
<g id="node59" class="node">
<title>category_theory.abelian.of_coimage_image_comparison_is_iso.m.category_theory.is_iso</title>
<g id="a_node59"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.of_coimage_image_comparison_is_iso.m.category_theory.is_iso" xlink:title="category_theory.abelian.of_coimage_image_comparison_is_iso.m.category_theory.is_iso">
<ellipse fill="black" stroke="black" cx="6498.01" cy="-236.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.abelian.of_coimage_image_comparison_is_iso.m.category_theory.is_iso -->
<g id="edge112" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.abelian.of_coimage_image_comparison_is_iso.m.category_theory.is_iso</title>
<g id="a_edge112"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.of_coimage_image_comparison_is_iso.m.category_theory.is_iso" xlink:title="category_theory.abelian.of_coimage_image_comparison_is_iso.m.category_theory.is_iso">
<path fill="none" stroke="black" d="M2871.81,-334.69C3409.31,-320.36 6294.71,-243.4 6487.81,-238.25"/>
<polygon fill="black" stroke="black" points="6488.01,-241.75 6497.91,-237.98 6487.82,-234.75 6488.01,-241.75"/>
</a>
</g>
</g>
<!-- category_theory.abelian.epi_pullback_of_epi_f -->
<g id="node60" class="node">
<title>category_theory.abelian.epi_pullback_of_epi_f</title>
<g id="a_node60"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.epi_pullback_of_epi_f" xlink:title="category_theory.abelian.epi_pullback_of_epi_f">
<ellipse fill="black" stroke="black" cx="2714.01" cy="-236.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.abelian.epi_pullback_of_epi_f -->
<g id="edge113" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.abelian.epi_pullback_of_epi_f</title>
<g id="a_edge113"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.epi_pullback_of_epi_f" xlink:title="category_theory.abelian.epi_pullback_of_epi_f">
<path fill="none" stroke="black" d="M2769.21,-323.2C2753.91,-306.43 2732.01,-277.14 2714.01,-251.48 2713.21,-250.3 2712.31,-249.05 2711.51,-247.81"/>
<polygon fill="black" stroke="black" points="2714.95,-248.5 2713.61,-237.99 2708.1,-247.04 2714.95,-248.5"/>
</a>
</g>
</g>
<!-- category_theory.limits.image.pre_comp_epi_of_epi -->
<g id="node61" class="node">
<title>category_theory.limits.image.pre_comp_epi_of_epi</title>
<g id="a_node61"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.image.pre_comp_epi_of_epi" xlink:title="category_theory.limits.image.pre_comp_epi_of_epi">
<ellipse fill="black" stroke="black" cx="2750.01" cy="-236.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.limits.image.pre_comp_epi_of_epi -->
<g id="edge114" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.limits.image.pre_comp_epi_of_epi</title>
<g id="a_edge114"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.image.pre_comp_epi_of_epi" xlink:title="category_theory.limits.image.pre_comp_epi_of_epi">
<path fill="none" stroke="black" d="M2776.11,-323.21C2766.11,-303.14 2752.91,-266.28 2749.41,-248.34"/>
<polygon fill="black" stroke="black" points="2752.91,-248.15 2749.41,-238.15 2745.91,-248.15 2752.91,-248.15"/>
</a>
</g>
</g>
<!-- category_theory.linear.has_smul.smul.category_theory.epi -->
<g id="node62" class="node">
<title>category_theory.linear.has_smul.smul.category_theory.epi</title>
<g id="a_node62"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.linear.has_smul.smul.category_theory.epi" xlink:title="category_theory.linear.has_smul.smul.category_theory.epi">
<ellipse fill="black" stroke="black" cx="4252.01" cy="-236.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.linear.has_smul.smul.category_theory.epi -->
<g id="edge115" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.linear.has_smul.smul.category_theory.epi</title>
<g id="a_edge115"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.linear.has_smul.smul.category_theory.epi" xlink:title="category_theory.linear.has_smul.smul.category_theory.epi">
<path fill="none" stroke="black" d="M2871.61,-336.33C3164.61,-333.55 4115.61,-319.37 4234.01,-251.48 4237.41,-249.55 4239.71,-245.78 4242.61,-242.72"/>
<polygon fill="black" stroke="black" points="4244.39,-245.74 4251.61,-237.99 4241.13,-239.54 4244.39,-245.74"/>
</a>
</g>
</g>
<!-- category_theory.limits.coprod.map_epi -->
<g id="node63" class="node">
<title>category_theory.limits.coprod.map_epi</title>
<g id="a_node63"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.coprod.map_epi" xlink:title="category_theory.limits.coprod.map_epi">
<ellipse fill="black" stroke="black" cx="2786.01" cy="-236.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.limits.coprod.map_epi -->
<g id="edge116" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.limits.coprod.map_epi</title>
<g id="a_edge116"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.coprod.map_epi" xlink:title="category_theory.limits.coprod.map_epi">
<path fill="none" stroke="black" d="M2776.31,-323.21C2770.61,-301.92 2771.31,-261.72 2778.51,-245.28"/>
<polygon fill="black" stroke="black" points="2781.18,-247.56 2785.71,-237.99 2776.2,-242.65 2781.18,-247.56"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.limits.coprod.map_epi -->
<g id="edge117" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.limits.coprod.map_epi</title>
<g id="a_edge117"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.coprod.map_epi" xlink:title="category_theory.limits.coprod.map_epi">
<path fill="none" stroke="black" d="M2786.01,-323.21C2786.01,-303.14 2786.01,-266.28 2786.01,-248.34"/>
<polygon fill="black" stroke="black" points="2789.51,-248.15 2786.01,-238.15 2782.51,-248.15 2789.51,-248.15"/>
</a>
</g>
</g>
<!-- category_theory.abelian.epi_pullback_of_epi_g -->
<g id="node64" class="node">
<title>category_theory.abelian.epi_pullback_of_epi_g</title>
<g id="a_node64"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.epi_pullback_of_epi_g" xlink:title="category_theory.abelian.epi_pullback_of_epi_g">
<ellipse fill="black" stroke="black" cx="2732.01" cy="-236.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.abelian.epi_pullback_of_epi_g -->
<g id="edge118" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.abelian.epi_pullback_of_epi_g</title>
<g id="a_edge118"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.epi_pullback_of_epi_g" xlink:title="category_theory.abelian.epi_pullback_of_epi_g">
<path fill="none" stroke="black" d="M2773.61,-323.21C2759.91,-303.04 2739.91,-265.9 2733.21,-248.06"/>
<polygon fill="black" stroke="black" points="2736.65,-247.41 2731.51,-238.15 2729.76,-248.6 2736.65,-247.41"/>
</a>
</g>
</g>
<!-- category_theory.strong_mono.has_lift -->
<g id="node65" class="node">
<title>category_theory.strong_mono.has_lift</title>
<g id="a_node65"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_mono.has_lift" xlink:title="category_theory.strong_mono.has_lift">
<ellipse fill="black" stroke="black" cx="3757.01" cy="-236.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.epi&#45;&gt;category_theory.strong_mono.has_lift -->
<g id="edge119" class="edge">
<title>category_theory.epi&#45;&gt;category_theory.strong_mono.has_lift</title>
<g id="a_edge119"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_mono.has_lift" xlink:title="category_theory.strong_mono.has_lift">
<path fill="none" stroke="black" d="M2871.71,-328.24C3091.51,-305.83 3663.71,-247.49 3746.91,-239.01"/>
<polygon fill="black" stroke="black" points="3747.32,-242.49 3756.91,-237.99 3746.61,-235.52 3747.32,-242.49"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image&#45;&gt;category_theory.limits.has_image -->
<g id="edge120" class="edge">
<title>category_theory.limits.has_image&#45;&gt;category_theory.limits.has_image</title>
<g id="a_edge120"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.hom.has_image" xlink:title="category_theory.limits.hom.has_image">
<path fill="none" stroke="black" d="M2410.61,-554.54C2461.61,-563.24 2518.51,-558.39 2518.51,-539.98 2518.51,-522.76 2468.71,-517.4 2420.51,-523.91"/>
<polygon fill="black" stroke="black" points="2419.97,-520.45 2410.61,-525.42 2421.03,-527.37 2419.97,-520.45"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image&#45;&gt;category_theory.limits.has_image_iso_comp -->
<g id="edge121" class="edge">
<title>category_theory.limits.has_image&#45;&gt;category_theory.limits.has_image_iso_comp</title>
<g id="a_edge121"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_iso_comp" xlink:title="category_theory.limits.has_image_iso_comp">
<path fill="none" stroke="black" d="M2365.81,-554.77C2368.61,-575.17 2368.41,-612.9 2365.21,-630.49"/>
<polygon fill="black" stroke="black" points="2361.91,-629.33 2361.41,-639.91 2368.4,-631.95 2361.91,-629.33"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image&#45;&gt;category_theory.limits.has_image_comp_iso -->
<g id="edge122" class="edge">
<title>category_theory.limits.has_image&#45;&gt;category_theory.limits.has_image_comp_iso</title>
<g id="a_edge122"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_comp_iso" xlink:title="category_theory.limits.has_image_comp_iso">
<path fill="none" stroke="black" d="M2343.21,-525.21C2321.11,-504.63 2285.41,-466.38 2272.41,-449"/>
<polygon fill="black" stroke="black" points="2275.42,-447.2 2267.51,-440.15 2269.3,-450.59 2275.42,-447.2"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image&#45;&gt;category_theory.limits.category_theory.category_struct.comp.has_image -->
<g id="edge123" class="edge">
<title>category_theory.limits.has_image&#45;&gt;category_theory.limits.category_theory.category_struct.comp.has_image</title>
<g id="a_edge123"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.category_struct.comp.has_image" xlink:title="category_theory.limits.category_theory.category_struct.comp.has_image">
<path fill="none" stroke="black" d="M2356.21,-525.21C2353.41,-504.82 2353.61,-467.09 2356.81,-449.49"/>
<polygon fill="black" stroke="black" points="2360.14,-450.6 2360.71,-440.02 2353.67,-447.93 2360.14,-450.6"/>
</a>
</g>
</g>
<!-- category_theory.linear.has_smul.smul.category_theory.mono&#45;&gt;category_theory.mono -->
<g id="edge124" class="edge">
<title>category_theory.linear.has_smul.smul.category_theory.mono&#45;&gt;category_theory.mono</title>
<g id="a_edge124"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.linear.has_smul.smul.category_theory.mono" xlink:title="category_theory.linear.has_smul.smul.category_theory.mono">
<path fill="none" stroke="black" d="M7258.41,-843.99C7266.91,-844.29 7264.21,-854.05 7258.01,-857.48 7185.91,-897.28 4587.11,-934.39 4040.31,-941.69"/>
<polygon fill="black" stroke="black" points="4040.07,-938.19 4030.11,-941.82 4040.16,-945.19 4040.07,-938.19"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_pullback&#45;&gt;category_theory.limits.has_pullback_of_comp_mono -->
<g id="edge125" class="edge">
<title>category_theory.limits.has_pullback&#45;&gt;category_theory.limits.has_pullback_of_comp_mono</title>
<g id="a_edge125"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pullback_of_comp_mono" xlink:title="category_theory.limits.has_pullback_of_comp_mono">
<path fill="none" stroke="black" d="M3748.31,-828.21C3747.21,-807.71 3750.51,-769.7 3755.11,-752.22"/>
<polygon fill="black" stroke="black" points="3758.37,-753.53 3759.71,-743.02 3752.11,-750.4 3758.37,-753.53"/>
</a>
</g>
</g>
<!-- category_theory.mono_comp&#45;&gt;category_theory.mono -->
<g id="edge126" class="edge">
<title>category_theory.mono_comp&#45;&gt;category_theory.mono</title>
<g id="a_edge126"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.mono_comp" xlink:title="category_theory.mono_comp">
<path fill="none" stroke="black" d="M3922.31,-843.99C3934.41,-844.78 3946.51,-889.96 3947.41,-919"/>
<polygon fill="black" stroke="black" points="3943.91,-919.14 3947.21,-929.21 3950.91,-919.28 3943.91,-919.14"/>
</a>
</g>
</g>
<!-- category_theory.abelian.mono_pushout_of_mono_f&#45;&gt;category_theory.mono -->
<g id="edge127" class="edge">
<title>category_theory.abelian.mono_pushout_of_mono_f&#45;&gt;category_theory.mono</title>
<g id="a_edge127"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.mono_pushout_of_mono_f" xlink:title="category_theory.abelian.mono_pushout_of_mono_f">
<path fill="none" stroke="black" d="M2989.41,-843.99C2998.11,-844.29 3000.91,-853.85 3007.01,-857.48 3077.61,-899.47 3613.11,-928.04 3839.51,-938.53"/>
<polygon fill="black" stroke="black" points="3839.56,-942.04 3849.71,-939 3839.89,-935.04 3839.56,-942.04"/>
</a>
</g>
</g>
<!-- category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso&#45;&gt;category_theory.is_iso -->
<g id="edge128" class="edge">
<title>category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso&#45;&gt;category_theory.is_iso</title>
<g id="a_edge128"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso" xlink:title="category_theory.abelian.of_coimage_image_comparison_is_iso.e.category_theory.is_iso">
<path fill="none" stroke="black" d="M3798.41,-641.99C3807.11,-642.28 3809.91,-651.81 3816.01,-655.48 3930.61,-724.76 4318.41,-738.34 4509.71,-740.71"/>
<polygon fill="black" stroke="black" points="4509.78,-744.21 4519.81,-740.82 4509.85,-737.21 4509.78,-744.21"/>
</a>
</g>
</g>
<!-- category_theory.functor.map_mono&#45;&gt;category_theory.mono -->
<g id="edge129" class="edge">
<title>category_theory.functor.map_mono&#45;&gt;category_theory.mono</title>
<g id="a_edge129"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.map_mono" xlink:title="category_theory.functor.map_mono">
<path fill="none" stroke="black" d="M4894.41,-440.03C4901.51,-442.3 4853.01,-514.9 4850.01,-525.48 4837.11,-570.9 4870.01,-581.08 4883.01,-626.48 4894.21,-665.49 4904.61,-725.66 4896.01,-756.48 4881.91,-807 4879.41,-829.54 4835.01,-857.48 4769.31,-898.86 4260.31,-927.98 4040.51,-938.57"/>
<polygon fill="black" stroke="black" points="4040.04,-935.09 4030.21,-939.06 4040.37,-942.08 4040.04,-935.09"/>
</a>
</g>
</g>
<!-- category_theory.limits.prod.map_mono&#45;&gt;category_theory.mono -->
<g id="edge130" class="edge">
<title>category_theory.limits.prod.map_mono&#45;&gt;category_theory.mono</title>
<g id="a_edge130"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.prod.map_mono" xlink:title="category_theory.limits.prod.map_mono">
<path fill="none" stroke="black" d="M3940.31,-843.99C3952.41,-844.79 3956.11,-890.36 3951.71,-919.38"/>
<polygon fill="black" stroke="black" points="3948.28,-918.71 3949.71,-929.21 3955.14,-920.11 3948.28,-918.71"/>
</a>
</g>
</g>
<!-- category_theory.limits.cokernel.of_kernel_of_mono&#45;&gt;category_theory.is_iso -->
<g id="edge131" class="edge">
<title>category_theory.limits.cokernel.of_kernel_of_mono&#45;&gt;category_theory.is_iso</title>
<g id="a_edge131"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.cokernel.of_kernel_of_mono" xlink:title="category_theory.limits.cokernel.of_kernel_of_mono">
<path fill="none" stroke="black" d="M4360.11,-841.88C4360.81,-840.88 4367.11,-832.73 4374.01,-828.48 4427.91,-795.26 4496.51,-772.69 4547.21,-759.12"/>
<polygon fill="black" stroke="black" points="4548.33,-762.45 4557.11,-756.52 4546.55,-755.67 4548.33,-762.45"/>
</a>
</g>
</g>
<!-- category_theory.arrow.has_lift -->
<g id="node66" class="node">
<title>category_theory.arrow.has_lift</title>
<g id="a_node66"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.arrow.has_lift" xlink:title="category_theory.arrow.has_lift">
<polygon fill="none" stroke="black" points="3918.01,-150.98 3652.01,-150.98 3652.01,-119.98 3918.01,-119.98 3918.01,-150.98"/>
<text text-anchor="middle" x="3785.01" y="-131.78" font-family="Courier,monospace" font-size="14.00">category_theory.arrow.has_lift</text>
</a>
</g>
</g>
<!-- category_theory.strong_epi.has_lift&#45;&gt;category_theory.arrow.has_lift -->
<g id="edge132" class="edge">
<title>category_theory.strong_epi.has_lift&#45;&gt;category_theory.arrow.has_lift</title>
<g id="a_edge132"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_epi.has_lift" xlink:title="category_theory.strong_epi.has_lift">
<path fill="none" stroke="black" d="M3785.01,-336.84C3785.01,-332.11 3785.01,-212.98 3785.01,-160.93"/>
<polygon fill="black" stroke="black" points="3788.51,-160.63 3785.01,-150.63 3781.51,-160.63 3788.51,-160.63"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_pullback_of_comp_mono&#45;&gt;category_theory.limits.has_pullback -->
<g id="edge133" class="edge">
<title>category_theory.limits.has_pullback_of_comp_mono&#45;&gt;category_theory.limits.has_pullback</title>
<g id="a_edge133"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pullback_of_comp_mono" xlink:title="category_theory.limits.has_pullback_of_comp_mono">
<path fill="none" stroke="black" d="M3760.31,-743.02C3766.11,-744.59 3764.31,-789.31 3759.81,-818.09"/>
<polygon fill="black" stroke="black" points="3756.32,-817.75 3758.01,-828.21 3763.21,-818.98 3756.32,-817.75"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_kernel -->
<g id="node67" class="node">
<title>category_theory.limits.has_kernel</title>
<g id="a_node67"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_kernel" xlink:title="category_theory.limits.has_kernel">
<polygon fill="none" stroke="black" points="5139.51,-554.98 4848.51,-554.98 4848.51,-523.98 5139.51,-523.98 5139.51,-554.98"/>
<text text-anchor="middle" x="4994.01" y="-535.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_kernel</text>
</a>
</g>
</g>
<!-- category_theory.limits.has_kernel_comp_mono&#45;&gt;category_theory.limits.has_kernel -->
<g id="edge134" class="edge">
<title>category_theory.limits.has_kernel_comp_mono&#45;&gt;category_theory.limits.has_kernel</title>
<g id="a_edge134"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_kernel_comp_mono" xlink:title="category_theory.limits.has_kernel_comp_mono">
<path fill="none" stroke="black" d="M4876.41,-439.99C4885.11,-440.24 4889.21,-448.27 4894.01,-453.48 4917.71,-479.08 4949.51,-503.11 4971.01,-519.14"/>
<polygon fill="black" stroke="black" points="4969.2,-522.15 4979.31,-525.29 4973.36,-516.52 4969.2,-522.15"/>
</a>
</g>
</g>
<!-- category_theory.abelian.mono_pushout_of_mono_g&#45;&gt;category_theory.mono -->
<g id="edge135" class="edge">
<title>category_theory.abelian.mono_pushout_of_mono_g&#45;&gt;category_theory.mono</title>
<g id="a_edge135"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.mono_pushout_of_mono_g" xlink:title="category_theory.abelian.mono_pushout_of_mono_g">
<path fill="none" stroke="black" d="M2561.41,-843.99C2570.21,-844.29 2576.21,-854.05 2584.01,-857.48 2698.21,-907.77 3545.11,-933.12 3839.51,-940.58"/>
<polygon fill="black" stroke="black" points="3839.73,-944.09 3849.81,-940.84 3839.91,-937.09 3839.73,-944.09"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_equalizer -->
<g id="node68" class="node">
<title>category_theory.limits.has_equalizer</title>
<g id="a_node68"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_equalizer" xlink:title="category_theory.limits.has_equalizer">
<polygon fill="none" stroke="black" points="3009.01,-756.98 2693.01,-756.98 2693.01,-725.98 3009.01,-725.98 3009.01,-756.98"/>
<text text-anchor="middle" x="2851.01" y="-737.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_equalizer</text>
</a>
</g>
</g>
<!-- category_theory.limits.has_equalizer_comp_mono&#45;&gt;category_theory.limits.has_equalizer -->
<g id="edge136" class="edge">
<title>category_theory.limits.has_equalizer_comp_mono&#45;&gt;category_theory.limits.has_equalizer</title>
<g id="a_edge136"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_equalizer_comp_mono" xlink:title="category_theory.limits.has_equalizer_comp_mono">
<path fill="none" stroke="black" d="M3006.61,-841.97C2997.91,-841.71 2994.21,-833.34 2989.01,-828.48 2958.01,-799.37 2915.41,-775.96 2885.71,-761.05"/>
<polygon fill="black" stroke="black" points="2887.03,-757.8 2876.51,-756.51 2883.93,-764.07 2887.03,-757.8"/>
</a>
</g>
</g>
<!-- category_theory.strong_mono&#45;&gt;category_theory.mono -->
<g id="edge137" class="edge">
<title>category_theory.strong_mono&#45;&gt;category_theory.mono</title>
<g id="a_edge137"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.mono_of_strong_mono" xlink:title="category_theory.mono_of_strong_mono">
<path fill="none" stroke="black" d="M3990.31,-453.69C3999.11,-470.41 4014.01,-499.63 4025.01,-525.48 4043.81,-569.44 4053.61,-579.41 4062.01,-626.48 4064.31,-639.17 4062.71,-642.61 4062.01,-655.48 4057.11,-745.66 4082.21,-777.63 4040.01,-857.48 4025.01,-885.83 3996.41,-908.8 3973.61,-923.76"/>
<polygon fill="black" stroke="black" points="3971.48,-920.97 3964.91,-929.29 3975.23,-926.88 3971.48,-920.97"/>
</a>
</g>
</g>
<!-- category_theory.strong_mono&#45;&gt;category_theory.strong_mono.has_lift -->
<g id="edge138" class="edge">
<title>category_theory.strong_mono&#45;&gt;category_theory.strong_mono.has_lift</title>
<g id="a_edge138"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_mono.has_lift" xlink:title="category_theory.strong_mono.has_lift">
<path fill="none" stroke="black" d="M3902.71,-424.45C3858.71,-412.81 3807.01,-391.44 3776.01,-352.48 3751.21,-321.27 3753.41,-269.91 3755.71,-248.19"/>
<polygon fill="black" stroke="black" points="3759.22,-248.39 3757.01,-238.03 3752.27,-247.5 3759.22,-248.39"/>
</a>
</g>
</g>
<!-- algebraic_geometry.PresheafedSpace.is_open_immersion&#45;&gt;category_theory.is_iso -->
<g id="edge139" class="edge">
<title>algebraic_geometry.PresheafedSpace.is_open_immersion&#45;&gt;category_theory.is_iso</title>
<g id="a_edge139"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.PresheafedSpace.is_open_immersion.stalk_iso" xlink:title="algebraic_geometry.PresheafedSpace.is_open_immersion.stalk_iso">
<path fill="none" stroke="black" d="M5408.31,-554.53C5328.21,-576.5 5157.41,-620.89 5012.01,-655.48 4903.91,-681.2 4778.11,-708.68 4698.21,-725.34"/>
<polygon fill="black" stroke="black" points="4697.29,-721.96 4688.21,-727.42 4698.72,-728.81 4697.29,-721.96"/>
</a>
</g>
</g>
<!-- algebraic_geometry.PresheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.PresheafedSpace.is_open_immersion -->
<g id="edge140" class="edge">
<title>algebraic_geometry.PresheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.PresheafedSpace.is_open_immersion</title>
<g id="a_edge140"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.PresheafedSpace.is_open_immersion.pullback_one_is_open_immersion" xlink:title="algebraic_geometry.PresheafedSpace.is_open_immersion.pullback_one_is_open_immersion">
<path fill="none" stroke="black" d="M5529.31,-554.51C5607.01,-563.25 5694.01,-558.41 5694.01,-539.98 5694.01,-522.34 5614.31,-517.15 5539.31,-524.4"/>
<polygon fill="black" stroke="black" points="5538.89,-520.92 5529.31,-525.45 5539.62,-527.89 5538.89,-520.92"/>
</a>
</g>
</g>
<!-- algebraic_geometry.PresheafedSpace.is_open_immersion.comp -->
<g id="node69" class="node">
<title>algebraic_geometry.PresheafedSpace.is_open_immersion.comp</title>
<g id="a_node69"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.PresheafedSpace.is_open_immersion.comp" xlink:title="algebraic_geometry.PresheafedSpace.is_open_immersion.comp">
<ellipse fill="black" stroke="black" cx="5454.01" cy="-438.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- algebraic_geometry.PresheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.PresheafedSpace.is_open_immersion.comp -->
<g id="edge141" class="edge">
<title>algebraic_geometry.PresheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.PresheafedSpace.is_open_immersion.comp</title>
<g id="a_edge141"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.PresheafedSpace.is_open_immersion.comp" xlink:title="algebraic_geometry.PresheafedSpace.is_open_immersion.comp">
<path fill="none" stroke="black" d="M5444.31,-525.21C5438.61,-503.92 5439.31,-463.72 5446.51,-447.28"/>
<polygon fill="black" stroke="black" points="5449.18,-449.56 5453.71,-439.99 5444.2,-444.65 5449.18,-449.56"/>
</a>
</g>
</g>
<!-- algebraic_geometry.PresheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.PresheafedSpace.is_open_immersion.comp -->
<g id="edge142" class="edge">
<title>algebraic_geometry.PresheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.PresheafedSpace.is_open_immersion.comp</title>
<g id="a_edge142"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.PresheafedSpace.is_open_immersion.comp" xlink:title="algebraic_geometry.PresheafedSpace.is_open_immersion.comp">
<path fill="none" stroke="black" d="M5454.01,-525.21C5454.01,-505.14 5454.01,-468.28 5454.01,-450.34"/>
<polygon fill="black" stroke="black" points="5457.51,-450.15 5454.01,-440.15 5450.51,-450.15 5457.51,-450.15"/>
</a>
</g>
</g>
<!-- category_theory.monoidal_category.tensor_is_iso&#45;&gt;category_theory.is_iso -->
<g id="edge143" class="edge">
<title>category_theory.monoidal_category.tensor_is_iso&#45;&gt;category_theory.is_iso</title>
<g id="a_edge143"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.monoidal_category.tensor_is_iso" xlink:title="category_theory.monoidal_category.tensor_is_iso">
<path fill="none" stroke="black" d="M4809.41,-641.98C4826.91,-642.12 4823.41,-650.81 4818.01,-655.48 4780.61,-687.71 4728.91,-710.43 4687.21,-724.31"/>
<polygon fill="black" stroke="black" points="4686.07,-721 4677.61,-727.39 4688.21,-727.67 4686.07,-721"/>
</a>
</g>
</g>
<!-- category_theory.is_iso.comp_is_iso&#45;&gt;category_theory.is_iso -->
<g id="edge144" class="edge">
<title>category_theory.is_iso.comp_is_iso&#45;&gt;category_theory.is_iso</title>
<g id="a_edge144"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_iso.comp_is_iso" xlink:title="category_theory.is_iso.comp_is_iso">
<path fill="none" stroke="black" d="M4827.41,-641.98C4844.91,-642.12 4841.51,-650.91 4836.01,-655.48 4795.81,-688.87 4740.71,-711.14 4695.61,-724.56"/>
<polygon fill="black" stroke="black" points="4694.55,-721.23 4685.91,-727.37 4696.49,-727.95 4694.55,-721.23"/>
</a>
</g>
</g>
<!-- algebraic_geometry.is_open_immersion&#45;&gt;algebraic_geometry.is_open_immersion -->
<g id="edge145" class="edge">
<title>algebraic_geometry.is_open_immersion&#45;&gt;algebraic_geometry.is_open_immersion</title>
<g id="a_edge145"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.is_open_immersion.pullback_one" xlink:title="algebraic_geometry.is_open_immersion.pullback_one">
<path fill="none" stroke="black" d="M4472.81,-655.54C4529.11,-664.24 4592.01,-659.39 4592.01,-640.98 4592.01,-623.65 4536.31,-618.33 4482.71,-625.03"/>
<polygon fill="black" stroke="black" points="4482.23,-621.56 4472.81,-626.42 4483.2,-628.5 4482.23,-621.56"/>
</a>
</g>
</g>
<!-- algebraic_geometry.is_open_immersion&#45;&gt;algebraic_geometry.LocallyRingedSpace.is_open_immersion -->
<g id="edge146" class="edge">
<title>algebraic_geometry.is_open_immersion&#45;&gt;algebraic_geometry.LocallyRingedSpace.is_open_immersion</title>
<g id="a_edge146"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.is_open_immersion.forget_map_is_open_immersion" xlink:title="algebraic_geometry.is_open_immersion.forget_map_is_open_immersion">
<path fill="none" stroke="black" d="M4425.01,-626.21C4433.11,-610.03 4446.81,-582.95 4456.61,-563.65"/>
<polygon fill="black" stroke="black" points="4459.78,-565.14 4461.11,-554.63 4453.52,-562.02 4459.78,-565.14"/>
</a>
</g>
</g>
<!-- category_theory.split_mono&#45;&gt;category_theory.mono -->
<g id="edge147" class="edge">
<title>category_theory.split_mono&#45;&gt;category_theory.mono</title>
<g id="a_edge147"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.split_mono.mono" xlink:title="category_theory.split_mono.mono">
<path fill="none" stroke="black" d="M3317.61,-654.35C3458.11,-670.38 3687.81,-699.59 3769.01,-727.48 3855.81,-757.26 3902.61,-749.32 3949.01,-828.48 3965.41,-856.48 3957.31,-895.16 3949.21,-919.62"/>
<polygon fill="black" stroke="black" points="3945.88,-918.57 3945.91,-929.16 3952.49,-920.85 3945.88,-918.57"/>
</a>
</g>
</g>
<!-- category_theory.split_mono&#45;&gt;category_theory.split_mono -->
<g id="edge148" class="edge">
<title>category_theory.split_mono&#45;&gt;category_theory.split_mono</title>
<g id="a_edge148"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.map.split_mono" xlink:title="category_theory.functor.map.split_mono">
<path fill="none" stroke="black" d="M3244.71,-655.54C3287.61,-664.24 3335.51,-659.39 3335.51,-640.98 3335.51,-623.97 3294.61,-618.54 3254.61,-624.67"/>
<polygon fill="black" stroke="black" points="3253.95,-621.23 3244.71,-626.42 3255.17,-628.13 3253.95,-621.23"/>
</a>
</g>
</g>
<!-- category_theory.regular_mono -->
<g id="node70" class="node">
<title>category_theory.regular_mono</title>
<g id="a_node70"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.regular_mono" xlink:title="category_theory.regular_mono">
<polygon fill="none" stroke="black" points="4017.51,-554.98 3768.51,-554.98 3768.51,-523.98 4017.51,-523.98 4017.51,-554.98"/>
<text text-anchor="middle" x="3893.01" y="-535.78" font-family="Courier,monospace" font-size="14.00">category_theory.regular_mono</text>
</a>
</g>
</g>
<!-- category_theory.split_mono&#45;&gt;category_theory.regular_mono -->
<g id="edge149" class="edge">
<title>category_theory.split_mono&#45;&gt;category_theory.regular_mono</title>
<g id="a_edge149"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.regular_mono.of_split_mono" xlink:title="category_theory.regular_mono.of_split_mono">
<path fill="none" stroke="black" d="M3297.11,-626.47C3425.51,-608.05 3654.91,-575.15 3788.51,-555.98"/>
<polygon fill="black" stroke="black" points="3789.32,-559.4 3798.71,-554.51 3788.32,-552.47 3789.32,-559.4"/>
</a>
</g>
</g>
<!-- category_theory.split_epi&#45;&gt;category_theory.epi -->
<g id="edge150" class="edge">
<title>category_theory.split_epi&#45;&gt;category_theory.epi</title>
<g id="a_edge150"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.split_epi.epi" xlink:title="category_theory.split_epi.epi">
<path fill="none" stroke="black" d="M2496.21,-626.26C2513.41,-589.56 2564.81,-487.65 2633.01,-424.48 2665.11,-394.74 2709.41,-371.43 2742.11,-356.72"/>
<polygon fill="black" stroke="black" points="2743.68,-359.85 2751.41,-352.61 2740.85,-353.45 2743.68,-359.85"/>
</a>
</g>
</g>
<!-- category_theory.split_epi&#45;&gt;category_theory.split_epi -->
<g id="edge151" class="edge">
<title>category_theory.split_epi&#45;&gt;category_theory.split_epi</title>
<g id="a_edge151"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.map.split_epi" xlink:title="category_theory.functor.map.split_epi">
<path fill="none" stroke="black" d="M2530.51,-655.54C2572.11,-664.24 2618.51,-659.39 2618.51,-640.98 2618.51,-624.08 2579.41,-618.61 2540.81,-624.55"/>
<polygon fill="black" stroke="black" points="2539.73,-621.19 2530.51,-626.42 2540.98,-628.08 2539.73,-621.19"/>
</a>
</g>
</g>
<!-- category_theory.regular_epi -->
<g id="node71" class="node">
<title>category_theory.regular_epi</title>
<g id="a_node71"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.regular_epi" xlink:title="category_theory.regular_epi">
<polygon fill="none" stroke="black" points="3080.51,-554.98 2839.51,-554.98 2839.51,-523.98 3080.51,-523.98 3080.51,-554.98"/>
<text text-anchor="middle" x="2960.01" y="-535.78" font-family="Courier,monospace" font-size="14.00">category_theory.regular_epi</text>
</a>
</g>
</g>
<!-- category_theory.split_epi&#45;&gt;category_theory.regular_epi -->
<g id="edge152" class="edge">
<title>category_theory.split_epi&#45;&gt;category_theory.regular_epi</title>
<g id="a_edge152"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.regular_epi.of_split_epi" xlink:title="category_theory.regular_epi.of_split_epi">
<path fill="none" stroke="black" d="M2554.41,-626.42C2640.91,-608.2 2794.31,-575.88 2885.71,-556.64"/>
<polygon fill="black" stroke="black" points="2886.65,-560.02 2895.71,-554.53 2885.21,-553.17 2886.65,-560.02"/>
</a>
</g>
</g>
<!-- algebraic_geometry.SheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.PresheafedSpace.is_open_immersion -->
<g id="edge153" class="edge">
<title>algebraic_geometry.SheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.PresheafedSpace.is_open_immersion</title>
<g id="a_edge153"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.SheafedSpace.is_open_immersion.forget_map_is_open_immersion" xlink:title="algebraic_geometry.SheafedSpace.is_open_immersion.forget_map_is_open_immersion">
<path fill="none" stroke="black" d="M5458.31,-626.21C5457.51,-610.33 5456.21,-583.93 5455.21,-564.72"/>
<polygon fill="black" stroke="black" points="5458.7,-564.44 5454.71,-554.63 5451.71,-564.79 5458.7,-564.44"/>
</a>
</g>
</g>
<!-- algebraic_geometry.SheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.SheafedSpace.is_open_immersion -->
<g id="edge154" class="edge">
<title>algebraic_geometry.SheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.SheafedSpace.is_open_immersion</title>
<g id="a_edge154"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.SheafedSpace.is_open_immersion.SheafedSpace_pullback_one_is_open_immersion" xlink:title="algebraic_geometry.SheafedSpace.is_open_immersion.SheafedSpace_pullback_one_is_open_immersion">
<path fill="none" stroke="black" d="M5530.31,-655.51C5604.11,-664.25 5686.51,-659.41 5686.51,-640.98 5686.51,-623.38 5611.31,-618.17 5540.31,-625.36"/>
<polygon fill="black" stroke="black" points="5539.88,-621.89 5530.31,-626.45 5540.63,-628.85 5539.88,-621.89"/>
</a>
</g>
</g>
<!-- algebraic_geometry.SheafedSpace.is_open_immersion.comp -->
<g id="node72" class="node">
<title>algebraic_geometry.SheafedSpace.is_open_immersion.comp</title>
<g id="a_node72"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.SheafedSpace.is_open_immersion.comp" xlink:title="algebraic_geometry.SheafedSpace.is_open_immersion.comp">
<ellipse fill="black" stroke="black" cx="5712.01" cy="-539.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- algebraic_geometry.SheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.SheafedSpace.is_open_immersion.comp -->
<g id="edge155" class="edge">
<title>algebraic_geometry.SheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.SheafedSpace.is_open_immersion.comp</title>
<g id="a_edge155"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.SheafedSpace.is_open_immersion.comp" xlink:title="algebraic_geometry.SheafedSpace.is_open_immersion.comp">
<path fill="none" stroke="black" d="M5520.41,-626.43C5569.01,-614.33 5636.11,-592.45 5685.01,-554.48 5689.41,-551.09 5692.31,-544.95 5701.61,-542.28"/>
<polygon fill="black" stroke="black" points="5702.15,-545.74 5711.61,-540.98 5701.25,-538.8 5702.15,-545.74"/>
</a>
</g>
</g>
<!-- algebraic_geometry.SheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.SheafedSpace.is_open_immersion.comp -->
<g id="edge156" class="edge">
<title>algebraic_geometry.SheafedSpace.is_open_immersion&#45;&gt;algebraic_geometry.SheafedSpace.is_open_immersion.comp</title>
<g id="a_edge156"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.SheafedSpace.is_open_immersion.comp" xlink:title="algebraic_geometry.SheafedSpace.is_open_immersion.comp">
<path fill="none" stroke="black" d="M5535.51,-626.43C5587.01,-614.33 5654.11,-592.45 5703.01,-554.48 5704.61,-553.25 5706.01,-551.66 5707.21,-550"/>
<polygon fill="black" stroke="black" points="5710.36,-551.54 5712.01,-541.08 5704.19,-548.23 5710.36,-551.54"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image_map.comp -->
<g id="node73" class="node">
<title>category_theory.limits.has_image_map.comp</title>
<g id="a_node73"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_map.comp" xlink:title="category_theory.limits.has_image_map.comp">
<ellipse fill="black" stroke="black" cx="3510.01" cy="-539.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image_map&#45;&gt;category_theory.limits.has_image_map.comp -->
<g id="edge157" class="edge">
<title>category_theory.limits.has_image_map&#45;&gt;category_theory.limits.has_image_map.comp</title>
<g id="a_edge157"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_map.comp" xlink:title="category_theory.limits.has_image_map.comp">
<path fill="none" stroke="black" d="M3500.31,-626.21C3494.61,-604.92 3495.31,-564.72 3502.51,-548.28"/>
<polygon fill="black" stroke="black" points="3505.18,-550.56 3509.71,-540.99 3500.2,-545.65 3505.18,-550.56"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image_map&#45;&gt;category_theory.limits.has_image_map.comp -->
<g id="edge158" class="edge">
<title>category_theory.limits.has_image_map&#45;&gt;category_theory.limits.has_image_map.comp</title>
<g id="a_edge158"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_map.comp" xlink:title="category_theory.limits.has_image_map.comp">
<path fill="none" stroke="black" d="M3510.01,-626.21C3510.01,-606.14 3510.01,-569.28 3510.01,-551.34"/>
<polygon fill="black" stroke="black" points="3513.51,-551.15 3510.01,-541.15 3506.51,-551.15 3513.51,-551.15"/>
</a>
</g>
</g>
<!-- algebraic_geometry.LocallyRingedSpace.is_open_immersion&#45;&gt;algebraic_geometry.LocallyRingedSpace.is_open_immersion -->
<g id="edge159" class="edge">
<title>algebraic_geometry.LocallyRingedSpace.is_open_immersion&#45;&gt;algebraic_geometry.LocallyRingedSpace.is_open_immersion</title>
<g id="a_edge159"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.LocallyRingedSpace.is_open_immersion.pullback_one_is_open_immersion" xlink:title="algebraic_geometry.LocallyRingedSpace.is_open_immersion.pullback_one_is_open_immersion">
<path fill="none" stroke="black" d="M4547.01,-554.51C4628.71,-563.25 4720.01,-558.41 4720.01,-539.98 4720.01,-522.3 4636.01,-517.13 4557.11,-524.45"/>
<polygon fill="black" stroke="black" points="4556.62,-520.98 4547.01,-525.45 4557.31,-527.95 4556.62,-520.98"/>
</a>
</g>
</g>
<!-- algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp -->
<g id="node74" class="node">
<title>algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp</title>
<g id="a_node74"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp" xlink:title="algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp">
<ellipse fill="black" stroke="black" cx="4468.01" cy="-438.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- algebraic_geometry.LocallyRingedSpace.is_open_immersion&#45;&gt;algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp -->
<g id="edge160" class="edge">
<title>algebraic_geometry.LocallyRingedSpace.is_open_immersion&#45;&gt;algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp</title>
<g id="a_edge160"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp" xlink:title="algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp">
<path fill="none" stroke="black" d="M4458.31,-525.21C4452.61,-503.92 4453.31,-463.72 4460.51,-447.28"/>
<polygon fill="black" stroke="black" points="4463.18,-449.56 4467.71,-439.99 4458.2,-444.65 4463.18,-449.56"/>
</a>
</g>
</g>
<!-- algebraic_geometry.LocallyRingedSpace.is_open_immersion&#45;&gt;algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp -->
<g id="edge161" class="edge">
<title>algebraic_geometry.LocallyRingedSpace.is_open_immersion&#45;&gt;algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp</title>
<g id="a_edge161"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp" xlink:title="algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp">
<path fill="none" stroke="black" d="M4468.01,-525.21C4468.01,-505.14 4468.01,-468.28 4468.01,-450.34"/>
<polygon fill="black" stroke="black" points="4471.51,-450.15 4468.01,-440.15 4464.51,-450.15 4471.51,-450.15"/>
</a>
</g>
</g>
<!-- category_theory.strong_epi&#45;&gt;category_theory.epi -->
<g id="edge162" class="edge">
<title>category_theory.strong_epi&#45;&gt;category_theory.epi</title>
<g id="a_edge162"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.epi_of_strong_epi" xlink:title="category_theory.epi_of_strong_epi">
<path fill="none" stroke="black" d="M3617.41,-425.99C3429.01,-406.27 3057.11,-367.35 2881.81,-349"/>
<polygon fill="black" stroke="black" points="2882.12,-345.51 2871.81,-347.96 2881.4,-352.48 2882.12,-345.51"/>
</a>
</g>
</g>
<!-- category_theory.strong_epi&#45;&gt;category_theory.strong_epi.has_lift -->
<g id="edge163" class="edge">
<title>category_theory.strong_epi&#45;&gt;category_theory.strong_epi.has_lift</title>
<g id="a_edge163"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_epi.has_lift" xlink:title="category_theory.strong_epi.has_lift">
<path fill="none" stroke="black" d="M3739.41,-424.21C3750.41,-403.63 3770.91,-365.38 3780.21,-348"/>
<polygon fill="black" stroke="black" points="3783.31,-349.62 3784.91,-339.15 3777.13,-346.34 3783.31,-349.62"/>
</a>
</g>
</g>
<!-- quasi_iso&#45;&gt;category_theory.is_iso -->
<g id="edge164" class="edge">
<title>quasi_iso&#45;&gt;category_theory.is_iso</title>
<g id="a_edge164"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/quasi_iso.is_iso" xlink:title="quasi_iso.is_iso">
<path fill="none" stroke="black" d="M4687.51,-655.63C4677.21,-672.12 4656.31,-700.08 4640.01,-719.48"/>
<polygon fill="black" stroke="black" points="4637.22,-717.36 4633.31,-727.21 4642.51,-721.95 4637.22,-717.36"/>
</a>
</g>
</g>
<!-- quasi_iso_comp -->
<g id="node75" class="node">
<title>quasi_iso_comp</title>
<g id="a_node75"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/quasi_iso_comp" xlink:title="quasi_iso_comp">
<ellipse fill="black" stroke="black" cx="4738.01" cy="-539.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- quasi_iso&#45;&gt;quasi_iso_comp -->
<g id="edge165" class="edge">
<title>quasi_iso&#45;&gt;quasi_iso_comp</title>
<g id="a_edge165"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/quasi_iso_comp" xlink:title="quasi_iso_comp">
<path fill="none" stroke="black" d="M4689.61,-626.21C4693.71,-604.07 4714.01,-561.51 4728.91,-546.44"/>
<polygon fill="black" stroke="black" points="4731.06,-549.23 4737.71,-540.99 4727.37,-543.28 4731.06,-549.23"/>
</a>
</g>
</g>
<!-- quasi_iso&#45;&gt;quasi_iso_comp -->
<g id="edge166" class="edge">
<title>quasi_iso&#45;&gt;quasi_iso_comp</title>
<g id="a_edge166"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/quasi_iso_comp" xlink:title="quasi_iso_comp">
<path fill="none" stroke="black" d="M4699.31,-626.21C4708.61,-605.73 4725.81,-567.76 4733.81,-550.26"/>
<polygon fill="black" stroke="black" points="4737,-551.71 4737.91,-541.15 4730.62,-548.83 4737,-551.71"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image_iso_comp&#45;&gt;category_theory.limits.has_image -->
<g id="edge167" class="edge">
<title>category_theory.limits.has_image_iso_comp&#45;&gt;category_theory.limits.has_image</title>
<g id="a_edge167"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_iso_comp" xlink:title="category_theory.limits.has_image_iso_comp">
<path fill="none" stroke="black" d="M2360.61,-639.91C2354.81,-637.88 2353.01,-593.46 2355.11,-564.84"/>
<polygon fill="black" stroke="black" points="2358.61,-565.09 2356.21,-554.77 2351.65,-564.33 2358.61,-565.09"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image_comp_iso&#45;&gt;category_theory.limits.has_image -->
<g id="edge168" class="edge">
<title>category_theory.limits.has_image_comp_iso&#45;&gt;category_theory.limits.has_image</title>
<g id="a_edge168"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_comp_iso" xlink:title="category_theory.limits.has_image_comp_iso">
<path fill="none" stroke="black" d="M2268.41,-440.02C2275.91,-441.63 2321.91,-488.7 2346.41,-517.34"/>
<polygon fill="black" stroke="black" points="2343.85,-519.73 2352.91,-525.21 2349.24,-515.27 2343.85,-519.73"/>
</a>
</g>
</g>
<!-- category_theory.limits.is_iso_coprod&#45;&gt;category_theory.is_iso -->
<g id="edge169" class="edge">
<title>category_theory.limits.is_iso_coprod&#45;&gt;category_theory.is_iso</title>
<g id="a_edge169"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.is_iso_coprod" xlink:title="category_theory.limits.is_iso_coprod">
<path fill="none" stroke="black" d="M4845.41,-641.98C4862.91,-642.12 4859.61,-650.99 4854.01,-655.48 4811.21,-689.96 4752.81,-711.87 4704.61,-724.87"/>
<polygon fill="black" stroke="black" points="4703.6,-721.52 4694.81,-727.43 4705.37,-728.29 4703.6,-721.52"/>
</a>
</g>
</g>
<!-- category_theory.limits.pushout.map_is_iso&#45;&gt;category_theory.is_iso -->
<g id="edge170" class="edge">
<title>category_theory.limits.pushout.map_is_iso&#45;&gt;category_theory.is_iso</title>
<g id="a_edge170"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pushout.map_is_iso" xlink:title="category_theory.limits.pushout.map_is_iso">
<path fill="none" stroke="black" d="M4755.31,-641.98C4782.01,-642.05 4778.11,-650.4 4773.01,-655.48 4745.11,-683.44 4706.71,-707.63 4674.01,-723.08"/>
<polygon fill="black" stroke="black" points="4672.25,-720.04 4664.61,-727.39 4675.16,-726.4 4672.25,-720.04"/>
</a>
</g>
</g>
<!-- category_theory.limits.category_theory.category_struct.comp.has_image&#45;&gt;category_theory.limits.has_image -->
<g id="edge171" class="edge">
<title>category_theory.limits.category_theory.category_struct.comp.has_image&#45;&gt;category_theory.limits.has_image</title>
<g id="a_edge171"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.category_struct.comp.has_image" xlink:title="category_theory.limits.category_theory.category_struct.comp.has_image">
<path fill="none" stroke="black" d="M2361.31,-440.02C2367.21,-441.59 2369.01,-486.31 2366.91,-515.09"/>
<polygon fill="black" stroke="black" points="2363.42,-514.89 2365.81,-525.21 2370.37,-515.65 2363.42,-514.89"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_kernel_iso_comp&#45;&gt;category_theory.limits.has_kernel -->
<g id="edge172" class="edge">
<title>category_theory.limits.has_kernel_iso_comp&#45;&gt;category_theory.limits.has_kernel</title>
<g id="a_edge172"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_kernel_iso_comp" xlink:title="category_theory.limits.has_kernel_iso_comp">
<path fill="none" stroke="black" d="M4993.61,-639.91C4987.81,-637.88 4986.01,-593.46 4988.11,-564.84"/>
<polygon fill="black" stroke="black" points="4991.61,-565.09 4989.21,-554.77 4984.65,-564.33 4991.61,-565.09"/>
</a>
</g>
</g>
<!-- category_theory.limits.pullback.map_is_iso&#45;&gt;category_theory.is_iso -->
<g id="edge173" class="edge">
<title>category_theory.limits.pullback.map_is_iso&#45;&gt;category_theory.is_iso</title>
<g id="a_edge173"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pullback.map_is_iso" xlink:title="category_theory.limits.pullback.map_is_iso">
<path fill="none" stroke="black" d="M4773.31,-641.98C4800.01,-642.05 4796.21,-650.55 4791.01,-655.48 4759.71,-684.99 4716.51,-708.71 4680.11,-723.62"/>
<polygon fill="black" stroke="black" points="4678.54,-720.48 4670.51,-727.4 4681.1,-726.99 4678.54,-720.48"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_cokernel -->
<g id="node76" class="node">
<title>category_theory.limits.has_cokernel</title>
<g id="a_node76"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_cokernel" xlink:title="category_theory.limits.has_cokernel">
<polygon fill="none" stroke="black" points="4540.01,-150.98 4232.01,-150.98 4232.01,-119.98 4540.01,-119.98 4540.01,-150.98"/>
<text text-anchor="middle" x="4386.01" y="-131.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_cokernel</text>
</a>
</g>
</g>
<!-- category_theory.limits.has_cokernel_comp_iso&#45;&gt;category_theory.limits.has_cokernel -->
<g id="edge174" class="edge">
<title>category_theory.limits.has_cokernel_comp_iso&#45;&gt;category_theory.limits.has_cokernel</title>
<g id="a_edge174"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_cokernel_comp_iso" xlink:title="category_theory.limits.has_cokernel_comp_iso">
<path fill="none" stroke="black" d="M4386.31,-50.51C4391.91,-51.76 4393.91,-86.78 4392.11,-111.33"/>
<polygon fill="black" stroke="black" points="4388.62,-111.1 4391.11,-121.4 4395.59,-111.79 4388.62,-111.1"/>
</a>
</g>
</g>
<!-- category_theory.limits.is_iso_prod&#45;&gt;category_theory.is_iso -->
<g id="edge175" class="edge">
<title>category_theory.limits.is_iso_prod&#45;&gt;category_theory.is_iso</title>
<g id="a_edge175"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.is_iso_prod" xlink:title="category_theory.limits.is_iso_prod">
<path fill="none" stroke="black" d="M4791.41,-641.98C4808.91,-642.12 4805.31,-650.7 4800.01,-655.48 4765.61,-686.33 4718.11,-709.5 4679.91,-723.89"/>
<polygon fill="black" stroke="black" points="4678.61,-720.64 4670.41,-727.35 4681.01,-727.22 4678.61,-720.64"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_cokernel_epi_comp&#45;&gt;category_theory.limits.has_cokernel -->
<g id="edge176" class="edge">
<title>category_theory.limits.has_cokernel_epi_comp&#45;&gt;category_theory.limits.has_cokernel</title>
<g id="a_edge176"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_cokernel_epi_comp" xlink:title="category_theory.limits.has_cokernel_epi_comp">
<path fill="none" stroke="black" d="M4233.61,-235.97C4225.11,-235.71 4228.91,-227.37 4234.01,-222.48 4264.51,-193.44 4306.61,-169.77 4338.81,-154.76"/>
<polygon fill="black" stroke="black" points="4340.43,-157.87 4348.11,-150.57 4337.56,-151.49 4340.43,-157.87"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_pushout&#45;&gt;category_theory.limits.has_pushout_of_epi_comp -->
<g id="edge177" class="edge">
<title>category_theory.limits.has_pushout&#45;&gt;category_theory.limits.has_pushout_of_epi_comp</title>
<g id="a_edge177"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pushout_of_epi_comp" xlink:title="category_theory.limits.has_pushout_of_epi_comp">
<path fill="none" stroke="black" d="M2985.21,-222.21C2982.41,-201.82 2982.61,-164.09 2985.81,-146.48"/>
<polygon fill="black" stroke="black" points="2989.14,-147.6 2989.71,-137.02 2982.67,-144.93 2989.14,-147.6"/>
</a>
</g>
</g>
<!-- category_theory.functor.map_epi&#45;&gt;category_theory.epi -->
<g id="edge178" class="edge">
<title>category_theory.functor.map_epi&#45;&gt;category_theory.epi</title>
<g id="a_edge178"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.map_epi" xlink:title="category_theory.functor.map_epi">
<path fill="none" stroke="black" d="M4270.41,-237.99C4278.91,-238.29 4276.21,-247.95 4270.01,-251.48 4150.41,-320.03 3191.31,-333.74 2881.91,-336.38"/>
<polygon fill="black" stroke="black" points="2881.59,-332.88 2871.61,-336.46 2881.64,-339.88 2881.59,-332.88"/>
</a>
</g>
</g>
<!-- category_theory.limits.kernel.of_cokernel_of_epi&#45;&gt;category_theory.is_iso -->
<g id="edge179" class="edge">
<title>category_theory.limits.kernel.of_cokernel_of_epi&#45;&gt;category_theory.is_iso</title>
<g id="a_edge179"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.kernel.of_cokernel_of_epi" xlink:title="category_theory.limits.kernel.of_cokernel_of_epi">
<path fill="none" stroke="black" d="M5778.01,-238.03C5779.01,-242.59 5838.71,-534.69 5695.01,-655.48 5676.61,-670.95 4996.31,-716.52 4726.61,-734.02"/>
<polygon fill="black" stroke="black" points="4726.17,-730.54 4716.41,-734.68 4726.62,-737.53 4726.17,-730.54"/>
</a>
</g>
</g>
<!-- category_theory.limits.image_subobject_comp_le_epi_of_epi&#45;&gt;category_theory.epi -->
<g id="edge180" class="edge">
<title>category_theory.limits.image_subobject_comp_le_epi_of_epi&#45;&gt;category_theory.epi</title>
<g id="a_edge180"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.image_subobject_comp_le_epi_of_epi" xlink:title="category_theory.limits.image_subobject_comp_le_epi_of_epi">
<path fill="none" stroke="black" d="M2768.31,-238.02C2774.51,-239.59 2784.51,-284.31 2787.51,-313.09"/>
<polygon fill="black" stroke="black" points="2784.04,-313.52 2788.31,-323.21 2791.01,-312.97 2784.04,-313.52"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_pushout_of_epi_comp&#45;&gt;category_theory.limits.has_pushout -->
<g id="edge181" class="edge">
<title>category_theory.limits.has_pushout_of_epi_comp&#45;&gt;category_theory.limits.has_pushout</title>
<g id="a_edge181"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_pushout_of_epi_comp" xlink:title="category_theory.limits.has_pushout_of_epi_comp">
<path fill="none" stroke="black" d="M2990.31,-137.02C2996.21,-138.58 2998.01,-183.31 2995.91,-212.09"/>
<polygon fill="black" stroke="black" points="2992.42,-211.89 2994.81,-222.21 2999.37,-212.65 2992.42,-211.89"/>
</a>
</g>
</g>
<!-- category_theory.abelian.of_coimage_image_comparison_is_iso.m.category_theory.is_iso&#45;&gt;category_theory.is_iso -->
<g id="edge182" class="edge">
<title>category_theory.abelian.of_coimage_image_comparison_is_iso.m.category_theory.is_iso&#45;&gt;category_theory.is_iso</title>
<g id="a_edge182"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.of_coimage_image_comparison_is_iso.m.category_theory.is_iso" xlink:title="category_theory.abelian.of_coimage_image_comparison_is_iso.m.category_theory.is_iso">
<path fill="none" stroke="black" d="M6498.01,-238.03C6498.51,-242.11 6527.01,-503.63 6479.01,-554.48 6385.81,-653.28 6006.21,-605.57 5872.01,-626.48 5804.91,-636.93 5789.31,-646.4 5722.01,-655.48 5531.61,-681.17 4965.51,-718.87 4726.51,-734.16"/>
<polygon fill="black" stroke="black" points="4726.17,-730.67 4716.41,-734.8 4726.62,-737.66 4726.17,-730.67"/>
</a>
</g>
</g>
<!-- category_theory.abelian.epi_pullback_of_epi_f&#45;&gt;category_theory.epi -->
<g id="edge183" class="edge">
<title>category_theory.abelian.epi_pullback_of_epi_f&#45;&gt;category_theory.epi</title>
<g id="a_edge183"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.epi_pullback_of_epi_f" xlink:title="category_theory.abelian.epi_pullback_of_epi_f">
<path fill="none" stroke="black" d="M2714.41,-237.99C2723.21,-238.22 2727.91,-245.67 2732.01,-251.48 2747.21,-273.13 2765.11,-297.36 2776.41,-314.49"/>
<polygon fill="black" stroke="black" points="2773.62,-316.61 2781.91,-323.2 2779.53,-312.88 2773.62,-316.61"/>
</a>
</g>
</g>
<!-- category_theory.limits.image.pre_comp_epi_of_epi&#45;&gt;category_theory.epi -->
<g id="edge184" class="edge">
<title>category_theory.limits.image.pre_comp_epi_of_epi&#45;&gt;category_theory.epi</title>
<g id="a_edge184"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.image.pre_comp_epi_of_epi" xlink:title="category_theory.limits.image.pre_comp_epi_of_epi">
<path fill="none" stroke="black" d="M2750.31,-238.02C2756.81,-239.59 2775.01,-284.7 2783.31,-313.47"/>
<polygon fill="black" stroke="black" points="2779.94,-314.39 2785.81,-323.21 2786.72,-312.65 2779.94,-314.39"/>
</a>
</g>
</g>
<!-- category_theory.linear.has_smul.smul.category_theory.epi&#45;&gt;category_theory.epi -->
<g id="edge185" class="edge">
<title>category_theory.linear.has_smul.smul.category_theory.epi&#45;&gt;category_theory.epi</title>
<g id="a_edge185"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.linear.has_smul.smul.category_theory.epi" xlink:title="category_theory.linear.has_smul.smul.category_theory.epi">
<path fill="none" stroke="black" d="M4252.41,-237.99C4260.91,-238.29 4258.21,-247.95 4252.01,-251.48 4134.01,-319.16 3188.71,-333.46 2881.81,-336.31"/>
<polygon fill="black" stroke="black" points="2881.58,-332.81 2871.61,-336.4 2881.64,-339.81 2881.58,-332.81"/>
</a>
</g>
</g>
<!-- category_theory.limits.coprod.map_epi&#45;&gt;category_theory.epi -->
<g id="edge186" class="edge">
<title>category_theory.limits.coprod.map_epi&#45;&gt;category_theory.epi</title>
<g id="a_edge186"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.coprod.map_epi" xlink:title="category_theory.limits.coprod.map_epi">
<path fill="none" stroke="black" d="M2786.31,-237.99C2798.41,-238.79 2802.11,-284.36 2797.71,-313.38"/>
<polygon fill="black" stroke="black" points="2794.28,-312.71 2795.71,-323.21 2801.14,-314.11 2794.28,-312.71"/>
</a>
</g>
</g>
<!-- category_theory.abelian.epi_pullback_of_epi_g&#45;&gt;category_theory.epi -->
<g id="edge187" class="edge">
<title>category_theory.abelian.epi_pullback_of_epi_g&#45;&gt;category_theory.epi</title>
<g id="a_edge187"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.abelian.epi_pullback_of_epi_g" xlink:title="category_theory.abelian.epi_pullback_of_epi_g">
<path fill="none" stroke="black" d="M2732.31,-238.02C2739.11,-239.6 2765.81,-285.1 2779.21,-313.84"/>
<polygon fill="black" stroke="black" points="2776.1,-315.45 2783.31,-323.21 2782.51,-312.65 2776.1,-315.45"/>
</a>
</g>
</g>
<!-- category_theory.strong_mono.has_lift&#45;&gt;category_theory.arrow.has_lift -->
<g id="edge188" class="edge">
<title>category_theory.strong_mono.has_lift&#45;&gt;category_theory.arrow.has_lift</title>
<g id="a_edge188"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_mono.has_lift" xlink:title="category_theory.strong_mono.has_lift">
<path fill="none" stroke="black" d="M3757.01,-235.91C3757.61,-233.87 3770.31,-189.07 3778.41,-160.46"/>
<polygon fill="black" stroke="black" points="3781.8,-161.34 3781.11,-150.77 3775.06,-159.46 3781.8,-161.34"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_kernel&#45;&gt;category_theory.limits.has_kernel_comp_mono -->
<g id="edge189" class="edge">
<title>category_theory.limits.has_kernel&#45;&gt;category_theory.limits.has_kernel_comp_mono</title>
<g id="a_edge189"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_kernel_comp_mono" xlink:title="category_theory.limits.has_kernel_comp_mono">
<path fill="none" stroke="black" d="M4966.11,-525.29C4940.41,-509.7 4903.01,-482.6 4876.01,-453.48 4874.91,-452.34 4873.91,-451.07 4873.11,-449.77"/>
<polygon fill="black" stroke="black" points="4876.53,-450.55 4875.61,-439.99 4869.75,-448.81 4876.53,-450.55"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_kernel&#45;&gt;category_theory.limits.has_kernel_iso_comp -->
<g id="edge190" class="edge">
<title>category_theory.limits.has_kernel&#45;&gt;category_theory.limits.has_kernel_iso_comp</title>
<g id="a_edge190"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_kernel_iso_comp" xlink:title="category_theory.limits.has_kernel_iso_comp">
<path fill="none" stroke="black" d="M4998.81,-554.77C5001.61,-575.17 5001.41,-612.9 4998.21,-630.49"/>
<polygon fill="black" stroke="black" points="4994.91,-629.33 4994.41,-639.91 5001.4,-631.95 4994.91,-629.33"/>
</a>
</g>
</g>
<!-- category_theory.limits.category_theory.functor.map.has_kernel -->
<g id="node77" class="node">
<title>category_theory.limits.category_theory.functor.map.has_kernel</title>
<g id="a_node77"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.functor.map.has_kernel" xlink:title="category_theory.limits.category_theory.functor.map.has_kernel">
<ellipse fill="black" stroke="black" cx="5080.01" cy="-438.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_kernel&#45;&gt;category_theory.limits.category_theory.functor.map.has_kernel -->
<g id="edge191" class="edge">
<title>category_theory.limits.has_kernel&#45;&gt;category_theory.limits.category_theory.functor.map.has_kernel</title>
<g id="a_edge191"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.functor.map.has_kernel" xlink:title="category_theory.limits.category_theory.functor.map.has_kernel">
<path fill="none" stroke="black" d="M5001.11,-525.21C5017.11,-503.46 5053.61,-461.98 5071.11,-446.24"/>
<polygon fill="black" stroke="black" points="5073.61,-448.75 5079.61,-440.02 5069.48,-443.1 5073.61,-448.75"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_equalizer&#45;&gt;category_theory.limits.has_equalizer_comp_mono -->
<g id="edge192" class="edge">
<title>category_theory.limits.has_equalizer&#45;&gt;category_theory.limits.has_equalizer_comp_mono</title>
<g id="a_edge192"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_equalizer_comp_mono" xlink:title="category_theory.limits.has_equalizer_comp_mono">
<path fill="none" stroke="black" d="M2890.11,-756.51C2924.11,-770.97 2972.71,-796.22 3007.01,-828.48 3008.21,-829.62 3009.31,-830.95 3010.31,-832.33"/>
<polygon fill="black" stroke="black" points="3006.94,-831.39 3007.41,-841.97 3013.65,-833.4 3006.94,-831.39"/>
</a>
</g>
</g>
<!-- algebraic_geometry.PresheafedSpace.is_open_immersion.comp&#45;&gt;algebraic_geometry.PresheafedSpace.is_open_immersion -->
<g id="edge550" class="edge">
<title>algebraic_geometry.PresheafedSpace.is_open_immersion.comp&#45;&gt;algebraic_geometry.PresheafedSpace.is_open_immersion</title>
<g id="a_edge550"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.PresheafedSpace.is_open_immersion.comp" xlink:title="algebraic_geometry.PresheafedSpace.is_open_immersion.comp">
<path fill="none" stroke="black" d="M5454.31,-439.99C5466.41,-440.79 5470.11,-486.36 5465.71,-515.38"/>
<polygon fill="black" stroke="black" points="5462.28,-514.71 5463.71,-525.21 5469.14,-516.11 5462.28,-514.71"/>
</a>
</g>
</g>
<!-- category_theory.regular_mono&#45;&gt;category_theory.mono -->
<g id="edge548" class="edge">
<title>category_theory.regular_mono&#45;&gt;category_theory.mono</title>
<g id="a_edge548"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.regular_mono.mono" xlink:title="category_theory.regular_mono.mono">
<path fill="none" stroke="black" d="M3863.81,-554.62C3826.91,-573.95 3770.51,-611.85 3789.01,-655.48 3832.21,-757.33 3924.81,-726.63 3968.01,-828.48 3980.91,-858.95 3966.31,-896.61 3953.91,-920.23"/>
<polygon fill="black" stroke="black" points="3950.76,-918.7 3948.91,-929.13 3956.86,-922.13 3950.76,-918.7"/>
</a>
</g>
</g>
<!-- category_theory.regular_mono&#45;&gt;category_theory.strong_mono -->
<g id="edge549" class="edge">
<title>category_theory.regular_mono&#45;&gt;category_theory.strong_mono</title>
<g id="a_edge549"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_mono_of_regular_mono" xlink:title="category_theory.strong_mono_of_regular_mono">
<path fill="none" stroke="black" d="M3905.51,-525.21C3920.61,-508.59 3946.21,-480.45 3963.81,-461.08"/>
<polygon fill="black" stroke="black" points="3966.46,-463.38 3970.61,-453.63 3961.29,-458.66 3966.46,-463.38"/>
</a>
</g>
</g>
<!-- category_theory.regular_epi&#45;&gt;category_theory.epi -->
<g id="edge551" class="edge">
<title>category_theory.regular_epi&#45;&gt;category_theory.epi</title>
<g id="a_edge551"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.regular_epi.epi" xlink:title="category_theory.regular_epi.epi">
<path fill="none" stroke="black" d="M2948.01,-525.23C2918.21,-490.97 2840.51,-401.57 2804.61,-360.36"/>
<polygon fill="black" stroke="black" points="2807.02,-357.8 2797.81,-352.56 2801.75,-362.4 2807.02,-357.8"/>
</a>
</g>
</g>
<!-- category_theory.regular_epi&#45;&gt;category_theory.strong_epi -->
<g id="edge552" class="edge">
<title>category_theory.regular_epi&#45;&gt;category_theory.strong_epi</title>
<g id="a_edge552"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.strong_epi_of_regular_epi" xlink:title="category_theory.strong_epi_of_regular_epi">
<path fill="none" stroke="black" d="M3065.31,-525.47C3209.41,-507 3467.11,-473.95 3616.41,-454.81"/>
<polygon fill="black" stroke="black" points="3617.04,-458.26 3626.51,-453.51 3616.15,-451.32 3617.04,-458.26"/>
</a>
</g>
</g>
<!-- algebraic_geometry.SheafedSpace.is_open_immersion.comp&#45;&gt;algebraic_geometry.SheafedSpace.is_open_immersion -->
<g id="edge553" class="edge">
<title>algebraic_geometry.SheafedSpace.is_open_immersion.comp&#45;&gt;algebraic_geometry.SheafedSpace.is_open_immersion</title>
<g id="a_edge553"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.SheafedSpace.is_open_immersion.comp" xlink:title="algebraic_geometry.SheafedSpace.is_open_immersion.comp">
<path fill="none" stroke="black" d="M5712.41,-540.98C5729.91,-541.12 5726.71,-550.09 5721.01,-554.48 5675.01,-590.16 5613.01,-611.62 5560.71,-624.13"/>
<polygon fill="black" stroke="black" points="5559.68,-620.78 5550.71,-626.43 5561.24,-627.6 5559.68,-620.78"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_image_map.comp&#45;&gt;category_theory.limits.has_image_map -->
<g id="edge554" class="edge">
<title>category_theory.limits.has_image_map.comp&#45;&gt;category_theory.limits.has_image_map</title>
<g id="a_edge554"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_image_map.comp" xlink:title="category_theory.limits.has_image_map.comp">
<path fill="none" stroke="black" d="M3510.31,-540.99C3522.41,-541.79 3526.11,-587.36 3521.71,-616.38"/>
<polygon fill="black" stroke="black" points="3518.28,-615.71 3519.71,-626.21 3525.14,-617.11 3518.28,-615.71"/>
</a>
</g>
</g>
<!-- algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp&#45;&gt;algebraic_geometry.LocallyRingedSpace.is_open_immersion -->
<g id="edge555" class="edge">
<title>algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp&#45;&gt;algebraic_geometry.LocallyRingedSpace.is_open_immersion</title>
<g id="a_edge555"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp" xlink:title="algebraic_geometry.LocallyRingedSpace.is_open_immersion.comp">
<path fill="none" stroke="black" d="M4468.31,-439.99C4480.41,-440.79 4484.11,-486.36 4479.71,-515.38"/>
<polygon fill="black" stroke="black" points="4476.28,-514.71 4477.71,-525.21 4483.14,-516.11 4476.28,-514.71"/>
</a>
</g>
</g>
<!-- quasi_iso_comp&#45;&gt;quasi_iso -->
<g id="edge556" class="edge">
<title>quasi_iso_comp&#45;&gt;quasi_iso</title>
<g id="a_edge556"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/quasi_iso_comp" xlink:title="quasi_iso_comp">
<path fill="none" stroke="black" d="M4738.31,-540.99C4750.21,-541.8 4732.51,-588.97 4714.51,-617.89"/>
<polygon fill="black" stroke="black" points="4711.59,-615.96 4708.91,-626.21 4717.4,-619.87 4711.59,-615.96"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_cokernel&#45;&gt;category_theory.limits.has_cokernel_comp_iso -->
<g id="edge557" class="edge">
<title>category_theory.limits.has_cokernel&#45;&gt;category_theory.limits.has_cokernel_comp_iso</title>
<g id="a_edge557"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_cokernel_comp_iso" xlink:title="category_theory.limits.has_cokernel_comp_iso">
<path fill="none" stroke="black" d="M4380.91,-121.4C4378.51,-104.13 4378.71,-74.77 4381.61,-59.82"/>
<polygon fill="black" stroke="black" points="4384.89,-61.07 4385.71,-50.51 4378.48,-58.25 4384.89,-61.07"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_cokernel&#45;&gt;category_theory.limits.has_cokernel_epi_comp -->
<g id="edge558" class="edge">
<title>category_theory.limits.has_cokernel&#45;&gt;category_theory.limits.has_cokernel_epi_comp</title>
<g id="a_edge558"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_cokernel_epi_comp" xlink:title="category_theory.limits.has_cokernel_epi_comp">
<path fill="none" stroke="black" d="M4361.71,-150.57C4333.01,-165.15 4285.51,-190.57 4252.01,-222.48 4249.21,-225.16 4246.81,-228.86 4243.81,-231.72"/>
<polygon fill="black" stroke="black" points="4242.08,-228.66 4234.41,-235.97 4244.97,-235.04 4242.08,-228.66"/>
</a>
</g>
</g>
<!-- category_theory.limits.category_theory.functor.map.has_cokernel -->
<g id="node261" class="node">
<title>category_theory.limits.category_theory.functor.map.has_cokernel</title>
<g id="a_node261"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.functor.map.has_cokernel" xlink:title="category_theory.limits.category_theory.functor.map.has_cokernel">
<ellipse fill="black" stroke="black" cx="5695.01" cy="-49.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_cokernel&#45;&gt;category_theory.limits.category_theory.functor.map.has_cokernel -->
<g id="edge559" class="edge">
<title>category_theory.limits.has_cokernel&#45;&gt;category_theory.limits.category_theory.functor.map.has_cokernel</title>
<g id="a_edge559"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.functor.map.has_cokernel" xlink:title="category_theory.limits.category_theory.functor.map.has_cokernel">
<path fill="none" stroke="black" d="M4537.71,-124.89C4859.61,-103.87 5589.21,-56.84 5684.71,-51.06"/>
<polygon fill="black" stroke="black" points="5685.13,-54.54 5694.91,-50.48 5684.73,-47.56 5685.13,-54.54"/>
</a>
</g>
</g>
<!-- category_theory.limits.category_theory.functor.map.has_kernel&#45;&gt;category_theory.limits.has_kernel -->
<g id="edge536" class="edge">
<title>category_theory.limits.category_theory.functor.map.has_kernel&#45;&gt;category_theory.limits.has_kernel</title>
<g id="a_edge536"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.functor.map.has_kernel" xlink:title="category_theory.limits.category_theory.functor.map.has_kernel">
<path fill="none" stroke="black" d="M5080.51,-440.15C5083.61,-443.28 5044.91,-489.74 5018.01,-517.83"/>
<polygon fill="black" stroke="black" points="5015.29,-515.61 5010.81,-525.21 5020.3,-520.5 5015.29,-515.61"/>
</a>
</g>
</g>
<!-- first_order.language.is_relational -->
<g id="node78" class="node">
<title>first_order.language.is_relational</title>
<g id="a_node78"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.is_relational" xlink:title="first_order.language.is_relational">
<polygon fill="none" stroke="black" points="16734.01,-2272 16434.01,-2272 16434.01,-2241 16734.01,-2241 16734.01,-2272"/>
<text text-anchor="middle" x="16584.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">first_order.language.is_relational</text>
</a>
</g>
</g>
<!-- first_order.language.countable_functions -->
<g id="node79" class="node">
<title>first_order.language.countable_functions</title>
<g id="a_node79"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.countable_functions" xlink:title="first_order.language.countable_functions">
<polygon fill="none" stroke="black" points="16978.01,-2171 16628.01,-2171 16628.01,-2140 16978.01,-2140 16978.01,-2171"/>
<text text-anchor="middle" x="16803.01" y="-2151.8" font-family="Courier,monospace" font-size="14.00">first_order.language.countable_functions</text>
</a>
</g>
</g>
<!-- first_order.language.is_relational&#45;&gt;first_order.language.countable_functions -->
<g id="edge193" class="edge">
<title>first_order.language.is_relational&#45;&gt;first_order.language.countable_functions</title>
<g id="a_edge193"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.is_relational.countable_functions" xlink:title="first_order.language.is_relational.countable_functions">
<path fill="none" stroke="black" d="M16614.01,-2242.4C16653.01,-2224.9 16721.01,-2194.2 16764.01,-2174.8"/>
<polygon fill="black" stroke="black" points="16765.43,-2178 16773.01,-2170.6 16762.47,-2171.66 16765.43,-2178"/>
</a>
</g>
</g>
<!-- first_order.language.is_relational_sum -->
<g id="node80" class="node">
<title>first_order.language.is_relational_sum</title>
<g id="a_node80"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.is_relational_sum" xlink:title="first_order.language.is_relational_sum">
<ellipse fill="black" stroke="black" cx="16584.01" cy="-2155.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- first_order.language.is_relational&#45;&gt;first_order.language.is_relational_sum -->
<g id="edge194" class="edge">
<title>first_order.language.is_relational&#45;&gt;first_order.language.is_relational_sum</title>
<g id="a_edge194"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.is_relational_sum" xlink:title="first_order.language.is_relational_sum">
<path fill="none" stroke="black" d="M16574.01,-2242.2C16569.01,-2220.9 16569.01,-2180.7 16577.01,-2164.3"/>
<polygon fill="black" stroke="black" points="16579.62,-2166.64 16584.01,-2157 16574.57,-2161.8 16579.62,-2166.64"/>
</a>
</g>
</g>
<!-- first_order.language.is_relational&#45;&gt;first_order.language.is_relational_sum -->
<g id="edge195" class="edge">
<title>first_order.language.is_relational&#45;&gt;first_order.language.is_relational_sum</title>
<g id="a_edge195"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.is_relational_sum" xlink:title="first_order.language.is_relational_sum">
<path fill="none" stroke="black" d="M16584.01,-2242.2C16584.01,-2222.2 16584.01,-2185.3 16584.01,-2167.4"/>
<polygon fill="black" stroke="black" points="16587.51,-2167.2 16584.01,-2157.2 16580.51,-2167.2 16587.51,-2167.2"/>
</a>
</g>
</g>
<!-- first_order.language.is_relational_sum&#45;&gt;first_order.language.is_relational -->
<g id="edge196" class="edge">
<title>first_order.language.is_relational_sum&#45;&gt;first_order.language.is_relational</title>
<g id="a_edge196"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.is_relational_sum" xlink:title="first_order.language.is_relational_sum">
<path fill="none" stroke="black" d="M16584.01,-2157C16596.01,-2157.8 16600.01,-2203.4 16596.01,-2232.4"/>
<polygon fill="black" stroke="black" points="16592.58,-2231.7 16594.01,-2242.2 16599.44,-2233.1 16592.58,-2231.7"/>
</a>
</g>
</g>
<!-- t1_space -->
<g id="node81" class="node">
<title>t1_space</title>
<g id="a_node81"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/t1_space" xlink:title="t1_space">
<polygon fill="none" stroke="black" points="15062.51,-1363 14981.51,-1363 14981.51,-1332 15062.51,-1332 15062.51,-1363"/>
<text text-anchor="middle" x="15022.01" y="-1343.8" font-family="Courier,monospace" font-size="14.00">t1_space</text>
</a>
</g>
</g>
<!-- t0_space -->
<g id="node82" class="node">
<title>t0_space</title>
<g id="a_node82"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/t0_space" xlink:title="t0_space">
<polygon fill="none" stroke="black" points="16139.51,-1262 16058.51,-1262 16058.51,-1231 16139.51,-1231 16139.51,-1262"/>
<text text-anchor="middle" x="16099.01" y="-1242.8" font-family="Courier,monospace" font-size="14.00">t0_space</text>
</a>
</g>
</g>
<!-- t1_space&#45;&gt;t0_space -->
<g id="edge199" class="edge">
<title>t1_space&#45;&gt;t0_space</title>
<g id="a_edge199"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/t1_space.t0_space" xlink:title="t1_space.t0_space">
<path fill="none" stroke="black" d="M15063.01,-1344.6C15226.01,-1334.8 15834.01,-1296.9 16049.01,-1261.3"/>
<polygon fill="black" stroke="black" points="16048.84,-1264.9 16058.01,-1259.6 16047.54,-1258.02 16048.84,-1264.9"/>
</a>
</g>
</g>
<!-- measure_theory.measure.is_haar_measure.has_no_atoms -->
<g id="node83" class="node">
<title>measure_theory.measure.is_haar_measure.has_no_atoms</title>
<g id="a_node83"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_haar_measure.has_no_atoms" xlink:title="measure_theory.measure.is_haar_measure.has_no_atoms">
<ellipse fill="black" stroke="black" cx="15228.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- t1_space&#45;&gt;measure_theory.measure.is_haar_measure.has_no_atoms -->
<g id="edge200" class="edge">
<title>t1_space&#45;&gt;measure_theory.measure.is_haar_measure.has_no_atoms</title>
<g id="a_edge200"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_haar_measure.has_no_atoms" xlink:title="measure_theory.measure.is_haar_measure.has_no_atoms">
<path fill="none" stroke="black" d="M15032.01,-1333.5C15049.01,-1310 15087.01,-1261.2 15130.01,-1232.5 15204.01,-1182.7 15267.01,-1234.2 15318.01,-1160.5 15336.01,-1133.6 15250.01,-903.15 15232.01,-853.41"/>
<polygon fill="black" stroke="black" points="15235.16,-851.86 15228.01,-844.03 15228.72,-854.6 15235.16,-851.86"/>
</a>
</g>
</g>
<!-- measure_theory.measure.is_add_haar_measure.has_no_atoms -->
<g id="node84" class="node">
<title>measure_theory.measure.is_add_haar_measure.has_no_atoms</title>
<g id="a_node84"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_add_haar_measure.has_no_atoms" xlink:title="measure_theory.measure.is_add_haar_measure.has_no_atoms">
<ellipse fill="black" stroke="black" cx="13876.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- t1_space&#45;&gt;measure_theory.measure.is_add_haar_measure.has_no_atoms -->
<g id="edge201" class="edge">
<title>t1_space&#45;&gt;measure_theory.measure.is_add_haar_measure.has_no_atoms</title>
<g id="a_edge201"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_add_haar_measure.has_no_atoms" xlink:title="measure_theory.measure.is_add_haar_measure.has_no_atoms">
<path fill="none" stroke="black" d="M14981.01,-1343.6C14949.01,-1340.9 14902.01,-1336.9 14861.01,-1333.5 14477.01,-1301.4 14364.01,-1380.1 13998.01,-1261.5 13974.01,-1253.8 13973.01,-1243.2 13950.01,-1232.5 13864.01,-1191.7 13803.01,-1238.4 13748.01,-1160.5 13688.01,-1075.6 13726.01,-1016.3 13783.01,-929.48 13807.01,-893.19 13849.01,-861.92 13867.01,-849.59"/>
<polygon fill="black" stroke="black" points="13869.36,-852.25 13876.01,-844.01 13865.67,-846.3 13869.36,-852.25"/>
</a>
</g>
</g>
<!-- has_continuous_inv₀.has_measurable_inv -->
<g id="node85" class="node">
<title>has_continuous_inv₀.has_measurable_inv</title>
<g id="a_node85"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_inv₀.has_measurable_inv" xlink:title="has_continuous_inv₀.has_measurable_inv">
<ellipse fill="black" stroke="black" cx="13832.01" cy="-1246.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- t1_space&#45;&gt;has_continuous_inv₀.has_measurable_inv -->
<g id="edge202" class="edge">
<title>t1_space&#45;&gt;has_continuous_inv₀.has_measurable_inv</title>
<g id="a_edge202"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_inv₀.has_measurable_inv" xlink:title="has_continuous_inv₀.has_measurable_inv">
<path fill="none" stroke="black" d="M14981.01,-1344.1C14840.01,-1333.9 14358.01,-1298.5 13960.01,-1261.5 13916.01,-1257.4 13864.01,-1251.6 13842.01,-1249.1"/>
<polygon fill="black" stroke="black" points="13842.34,-1245.61 13832.01,-1248 13841.57,-1252.57 13842.34,-1245.61"/>
</a>
</g>
</g>
<!-- opens_measurable_space.to_measurable_singleton_class -->
<g id="node86" class="node">
<title>opens_measurable_space.to_measurable_singleton_class</title>
<g id="a_node86"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/opens_measurable_space.to_measurable_singleton_class" xlink:title="opens_measurable_space.to_measurable_singleton_class">
<ellipse fill="black" stroke="black" cx="14849.01" cy="-1246.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- t1_space&#45;&gt;opens_measurable_space.to_measurable_singleton_class -->
<g id="edge203" class="edge">
<title>t1_space&#45;&gt;opens_measurable_space.to_measurable_singleton_class</title>
<g id="a_edge203"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/opens_measurable_space.to_measurable_singleton_class" xlink:title="opens_measurable_space.to_measurable_singleton_class">
<path fill="none" stroke="black" d="M14998.01,-1333.4C14960.01,-1311.2 14884.01,-1268.1 14858.01,-1253.2"/>
<polygon fill="black" stroke="black" points="14859.42,-1249.97 14849.01,-1248 14855.92,-1256.03 14859.42,-1249.97"/>
</a>
</g>
</g>
<!-- measure_theory.has_no_atoms -->
<g id="node87" class="node">
<title>measure_theory.has_no_atoms</title>
<g id="a_node87"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.has_no_atoms" xlink:title="measure_theory.has_no_atoms">
<polygon fill="none" stroke="black" points="15298.51,-756.98 15057.51,-756.98 15057.51,-725.98 15298.51,-725.98 15298.51,-756.98"/>
<text text-anchor="middle" x="15178.01" y="-737.78" font-family="Courier,monospace" font-size="14.00">measure_theory.has_no_atoms</text>
</a>
</g>
</g>
<!-- measure_theory.measure.is_haar_measure.has_no_atoms&#45;&gt;measure_theory.has_no_atoms -->
<g id="edge204" class="edge">
<title>measure_theory.measure.is_haar_measure.has_no_atoms&#45;&gt;measure_theory.has_no_atoms</title>
<g id="a_edge204"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_haar_measure.has_no_atoms" xlink:title="measure_theory.measure.is_haar_measure.has_no_atoms">
<path fill="none" stroke="black" d="M15228.01,-841.91C15227.01,-839.86 15204.01,-794.28 15189.01,-765.71"/>
<polygon fill="black" stroke="black" points="15192.29,-764.47 15185.01,-756.77 15185.9,-767.33 15192.29,-764.47"/>
</a>
</g>
</g>
<!-- measure_theory.measure.is_add_haar_measure.has_no_atoms&#45;&gt;measure_theory.has_no_atoms -->
<g id="edge205" class="edge">
<title>measure_theory.measure.is_add_haar_measure.has_no_atoms&#45;&gt;measure_theory.has_no_atoms</title>
<g id="a_edge205"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_add_haar_measure.has_no_atoms" xlink:title="measure_theory.measure.is_add_haar_measure.has_no_atoms">
<path fill="none" stroke="black" d="M13876.01,-841.98C13884.01,-841.36 14722.01,-777.64 15049.01,-752.77"/>
<polygon fill="black" stroke="black" points="15049.31,-756.26 15059.01,-752.01 15048.78,-749.28 15049.31,-756.26"/>
</a>
</g>
</g>
<!-- has_measurable_inv -->
<g id="node88" class="node">
<title>has_measurable_inv</title>
<g id="a_node88"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_inv" xlink:title="has_measurable_inv">
<polygon fill="none" stroke="black" points="13582.51,-1161 13417.51,-1161 13417.51,-1130 13582.51,-1130 13582.51,-1161"/>
<text text-anchor="middle" x="13500.01" y="-1141.8" font-family="Courier,monospace" font-size="14.00">has_measurable_inv</text>
</a>
</g>
</g>
<!-- has_continuous_inv₀.has_measurable_inv&#45;&gt;has_measurable_inv -->
<g id="edge206" class="edge">
<title>has_continuous_inv₀.has_measurable_inv&#45;&gt;has_measurable_inv</title>
<g id="a_edge206"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_inv₀.has_measurable_inv" xlink:title="has_continuous_inv₀.has_measurable_inv">
<path fill="none" stroke="black" d="M13832.01,-1245.9C13831.01,-1244.9 13825.01,-1236.5 13818.01,-1232.5 13777.01,-1209.2 13656.01,-1180.2 13575.01,-1162.7"/>
<polygon fill="black" stroke="black" points="13575.53,-1159.23 13565.01,-1160.5 13574.03,-1166.07 13575.53,-1159.23"/>
</a>
</g>
</g>
<!-- measurable_singleton_class -->
<g id="node89" class="node">
<title>measurable_singleton_class</title>
<g id="a_node89"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measurable_singleton_class" xlink:title="measurable_singleton_class">
<polygon fill="none" stroke="black" points="15239.01,-1161 15007.01,-1161 15007.01,-1130 15239.01,-1130 15239.01,-1161"/>
<text text-anchor="middle" x="15123.01" y="-1141.8" font-family="Courier,monospace" font-size="14.00">measurable_singleton_class</text>
</a>
</g>
</g>
<!-- opens_measurable_space.to_measurable_singleton_class&#45;&gt;measurable_singleton_class -->
<g id="edge207" class="edge">
<title>opens_measurable_space.to_measurable_singleton_class&#45;&gt;measurable_singleton_class</title>
<g id="a_edge207"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/opens_measurable_space.to_measurable_singleton_class" xlink:title="opens_measurable_space.to_measurable_singleton_class">
<path fill="none" stroke="black" d="M14849.01,-1245.9C14850.01,-1244.9 14856.01,-1236.7 14863.01,-1232.5 14920.01,-1198.4 14991.01,-1176.2 15045.01,-1162.9"/>
<polygon fill="black" stroke="black" points="15046.05,-1166.25 15055.01,-1160.6 15044.48,-1159.43 15046.05,-1166.25"/>
</a>
</g>
</g>
<!-- measure_theory.has_no_atoms&#45;&gt;measure_theory.has_no_atoms -->
<g id="edge208" class="edge">
<title>measure_theory.has_no_atoms&#45;&gt;measure_theory.has_no_atoms</title>
<g id="a_edge208"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.restrict.has_no_atoms" xlink:title="measure_theory.measure.restrict.has_no_atoms">
<path fill="none" stroke="black" d="M15221.01,-756.54C15265.01,-765.24 15315.01,-760.39 15315.01,-741.98 15315.01,-724.94 15272.01,-719.51 15231.01,-725.71"/>
<polygon fill="black" stroke="black" points="15230.28,-722.28 15221.01,-727.42 15231.46,-729.18 15230.28,-722.28"/>
</a>
</g>
</g>
<!-- measure_theory.measure.inv.is_mul_right_invariant -->
<g id="node90" class="node">
<title>measure_theory.measure.inv.is_mul_right_invariant</title>
<g id="a_node90"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.inv.is_mul_right_invariant" xlink:title="measure_theory.measure.inv.is_mul_right_invariant">
<ellipse fill="black" stroke="black" cx="13400.01" cy="-1044.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_measurable_inv&#45;&gt;measure_theory.measure.inv.is_mul_right_invariant -->
<g id="edge209" class="edge">
<title>has_measurable_inv&#45;&gt;measure_theory.measure.inv.is_mul_right_invariant</title>
<g id="a_edge209"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.inv.is_mul_right_invariant" xlink:title="measure_theory.measure.inv.is_mul_right_invariant">
<path fill="none" stroke="black" d="M13483.01,-1131.5C13464.01,-1115.4 13433.01,-1087.3 13409.01,-1059.5 13408.01,-1058 13407.01,-1056.4 13405.01,-1054.8"/>
<polygon fill="black" stroke="black" points="13408.03,-1053.03 13400.01,-1046.1 13401.96,-1056.51 13408.03,-1053.03"/>
</a>
</g>
</g>
<!-- measure_theory.measure.inv.is_mul_left_invariant -->
<g id="node91" class="node">
<title>measure_theory.measure.inv.is_mul_left_invariant</title>
<g id="a_node91"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.inv.is_mul_left_invariant" xlink:title="measure_theory.measure.inv.is_mul_left_invariant">
<ellipse fill="black" stroke="black" cx="12612.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_measurable_inv&#45;&gt;measure_theory.measure.inv.is_mul_left_invariant -->
<g id="edge210" class="edge">
<title>has_measurable_inv&#45;&gt;measure_theory.measure.inv.is_mul_left_invariant</title>
<g id="a_edge210"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.inv.is_mul_left_invariant" xlink:title="measure_theory.measure.inv.is_mul_left_invariant">
<path fill="none" stroke="black" d="M13483.01,-1131.3C13444.01,-1101.1 13355.01,-1031.2 13353.01,-1030.5 13180.01,-962.67 12646.01,-1095.3 12521.01,-958.48 12484.01,-918.32 12573.01,-865.03 12603.01,-848.85"/>
<polygon fill="black" stroke="black" points="12604.85,-851.84 12612.01,-844.03 12601.55,-845.67 12604.85,-851.84"/>
</a>
</g>
</g>
<!-- has_measurable_div_of_mul_inv -->
<g id="node92" class="node">
<title>has_measurable_div_of_mul_inv</title>
<g id="a_node92"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_div_of_mul_inv" xlink:title="has_measurable_div_of_mul_inv">
<ellipse fill="black" stroke="black" cx="13418.01" cy="-1044.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_measurable_inv&#45;&gt;has_measurable_div_of_mul_inv -->
<g id="edge211" class="edge">
<title>has_measurable_inv&#45;&gt;has_measurable_div_of_mul_inv</title>
<g id="a_edge211"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_div_of_mul_inv" xlink:title="has_measurable_div_of_mul_inv">
<path fill="none" stroke="black" d="M13489.01,-1131.2C13471.01,-1110.2 13439.01,-1070.9 13425.01,-1054"/>
<polygon fill="black" stroke="black" points="13427.27,-1051.26 13418.01,-1046.1 13422.03,-1055.91 13427.27,-1051.26"/>
</a>
</g>
</g>
<!-- has_measurable_div₂_of_mul_inv -->
<g id="node93" class="node">
<title>has_measurable_div₂_of_mul_inv</title>
<g id="a_node93"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_div₂_of_mul_inv" xlink:title="has_measurable_div₂_of_mul_inv">
<ellipse fill="black" stroke="black" cx="13458.01" cy="-1044.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_measurable_inv&#45;&gt;has_measurable_div₂_of_mul_inv -->
<g id="edge212" class="edge">
<title>has_measurable_inv&#45;&gt;has_measurable_div₂_of_mul_inv</title>
<g id="a_edge212"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_div₂_of_mul_inv" xlink:title="has_measurable_div₂_of_mul_inv">
<path fill="none" stroke="black" d="M13494.01,-1131.2C13486.01,-1110.9 13470.01,-1073.2 13462.01,-1055.5"/>
<polygon fill="black" stroke="black" points="13465.15,-1053.93 13458.01,-1046.1 13458.71,-1056.67 13465.15,-1053.93"/>
</a>
</g>
</g>
<!-- measure_theory.measure.inv.measure_theory.sigma_finite -->
<g id="node94" class="node">
<title>measure_theory.measure.inv.measure_theory.sigma_finite</title>
<g id="a_node94"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.inv.measure_theory.sigma_finite" xlink:title="measure_theory.measure.inv.measure_theory.sigma_finite">
<ellipse fill="black" stroke="black" cx="16430.01" cy="-539.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_measurable_inv&#45;&gt;measure_theory.measure.inv.measure_theory.sigma_finite -->
<g id="edge213" class="edge">
<title>has_measurable_inv&#45;&gt;measure_theory.measure.inv.measure_theory.sigma_finite</title>
<g id="a_edge213"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.inv.measure_theory.sigma_finite" xlink:title="measure_theory.measure.inv.measure_theory.sigma_finite">
<path fill="none" stroke="black" d="M13502.01,-1131.4C13510.01,-1079.9 13546.01,-896.92 13663.01,-828.48 14137.01,-550.48 15610.01,-830.13 16131.01,-655.48 16153.01,-648.04 16154.01,-636.73 16175.01,-626.48 16266.01,-582.41 16384.01,-551.93 16420.01,-543.41"/>
<polygon fill="black" stroke="black" points="16421.11,-546.75 16430.01,-541 16419.47,-539.94 16421.11,-546.75"/>
</a>
</g>
</g>
<!-- measure_theory.measure.is_mul_right_invariant -->
<g id="node477" class="node">
<title>measure_theory.measure.is_mul_right_invariant</title>
<g id="a_node477"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_mul_right_invariant" xlink:title="measure_theory.measure.is_mul_right_invariant">
<polygon fill="none" stroke="black" points="12919.01,-958.98 12527.01,-958.98 12527.01,-927.98 12919.01,-927.98 12919.01,-958.98"/>
<text text-anchor="middle" x="12723.01" y="-939.78" font-family="Courier,monospace" font-size="14.00">measure_theory.measure.is_mul_right_invariant</text>
</a>
</g>
</g>
<!-- measure_theory.measure.inv.is_mul_right_invariant&#45;&gt;measure_theory.measure.is_mul_right_invariant -->
<g id="edge916" class="edge">
<title>measure_theory.measure.inv.is_mul_right_invariant&#45;&gt;measure_theory.measure.is_mul_right_invariant</title>
<g id="a_edge916"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.inv.is_mul_right_invariant" xlink:title="measure_theory.measure.inv.is_mul_right_invariant">
<path fill="none" stroke="black" d="M13400.01,-1043.9C13399.01,-1042.8 13393.01,-1034 13386.01,-1030.5 13341.01,-1008.8 13056.01,-977.62 12875.01,-959.5"/>
<polygon fill="black" stroke="black" points="12875.32,-956.01 12865.01,-958.49 12874.61,-962.98 12875.32,-956.01"/>
</a>
</g>
</g>
<!-- measure_theory.measure.is_mul_left_invariant -->
<g id="node476" class="node">
<title>measure_theory.measure.is_mul_left_invariant</title>
<g id="a_node476"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_mul_left_invariant" xlink:title="measure_theory.measure.is_mul_left_invariant">
<polygon fill="none" stroke="black" points="13346.01,-756.98 12962.01,-756.98 12962.01,-725.98 13346.01,-725.98 13346.01,-756.98"/>
<text text-anchor="middle" x="13154.01" y="-737.78" font-family="Courier,monospace" font-size="14.00">measure_theory.measure.is_mul_left_invariant</text>
</a>
</g>
</g>
<!-- measure_theory.measure.inv.is_mul_left_invariant&#45;&gt;measure_theory.measure.is_mul_left_invariant -->
<g id="edge917" class="edge">
<title>measure_theory.measure.inv.is_mul_left_invariant&#45;&gt;measure_theory.measure.is_mul_left_invariant</title>
<g id="a_edge917"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.inv.is_mul_left_invariant" xlink:title="measure_theory.measure.inv.is_mul_left_invariant">
<path fill="none" stroke="black" d="M12612.01,-841.96C12618.01,-840.82 12919.01,-785.87 13070.01,-758.35"/>
<polygon fill="black" stroke="black" points="13070.82,-761.76 13080.01,-756.5 13069.54,-754.88 13070.82,-761.76"/>
</a>
</g>
</g>
<!-- has_measurable_div -->
<g id="node479" class="node">
<title>has_measurable_div</title>
<g id="a_node479"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_div" xlink:title="has_measurable_div">
<polygon fill="none" stroke="black" points="13519.51,-857.98 13354.51,-857.98 13354.51,-826.98 13519.51,-826.98 13519.51,-857.98"/>
<text text-anchor="middle" x="13437.01" y="-838.78" font-family="Courier,monospace" font-size="14.00">has_measurable_div</text>
</a>
</g>
</g>
<!-- has_measurable_div_of_mul_inv&#45;&gt;has_measurable_div -->
<g id="edge922" class="edge">
<title>has_measurable_div_of_mul_inv&#45;&gt;has_measurable_div</title>
<g id="a_edge922"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_div_of_mul_inv" xlink:title="has_measurable_div_of_mul_inv">
<path fill="none" stroke="black" d="M13418.01,-1043.9C13416.01,-1041.5 13365.01,-963.81 13363.01,-958.48 13359.01,-946.11 13358.01,-941.56 13363.01,-929.48 13373.01,-903.32 13395.01,-879.84 13412.01,-864.13"/>
<polygon fill="black" stroke="black" points="13414.56,-866.56 13420.01,-857.48 13410.09,-861.18 13414.56,-866.56"/>
</a>
</g>
</g>
<!-- has_measurable_div₂ -->
<g id="node480" class="node">
<title>has_measurable_div₂</title>
<g id="a_node480"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_div₂" xlink:title="has_measurable_div₂">
<polygon fill="none" stroke="black" points="13553.01,-958.98 13363.01,-958.98 13363.01,-927.98 13553.01,-927.98 13553.01,-958.98"/>
<text text-anchor="middle" x="13458.01" y="-939.78" font-family="Courier,monospace" font-size="14.00">has_measurable_div₂</text>
</a>
</g>
</g>
<!-- has_measurable_div₂_of_mul_inv&#45;&gt;has_measurable_div₂ -->
<g id="edge923" class="edge">
<title>has_measurable_div₂_of_mul_inv&#45;&gt;has_measurable_div₂</title>
<g id="a_edge923"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_div₂_of_mul_inv" xlink:title="has_measurable_div₂_of_mul_inv">
<path fill="none" stroke="black" d="M13458.01,-1043.9C13458.01,-1041.9 13458.01,-997.5 13458.01,-968.84"/>
<polygon fill="black" stroke="black" points="13461.51,-968.77 13458.01,-958.77 13454.51,-968.77 13461.51,-968.77"/>
</a>
</g>
</g>
<!-- measure_theory.sigma_finite -->
<g id="node309" class="node">
<title>measure_theory.sigma_finite</title>
<g id="a_node309"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.sigma_finite" xlink:title="measure_theory.sigma_finite">
<polygon fill="none" stroke="black" points="16586.51,-655.98 16345.51,-655.98 16345.51,-624.98 16586.51,-624.98 16586.51,-655.98"/>
<text text-anchor="middle" x="16466.01" y="-636.78" font-family="Courier,monospace" font-size="14.00">measure_theory.sigma_finite</text>
</a>
</g>
</g>
<!-- measure_theory.measure.inv.measure_theory.sigma_finite&#45;&gt;measure_theory.sigma_finite -->
<g id="edge924" class="edge">
<title>measure_theory.measure.inv.measure_theory.sigma_finite&#45;&gt;measure_theory.sigma_finite</title>
<g id="a_edge924"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.inv.measure_theory.sigma_finite" xlink:title="measure_theory.measure.inv.measure_theory.sigma_finite">
<path fill="none" stroke="black" d="M16430.01,-541.02C16437.01,-542.59 16455.01,-587.7 16463.01,-616.47"/>
<polygon fill="black" stroke="black" points="16459.73,-617.68 16466.01,-626.21 16466.42,-615.62 16459.73,-617.68"/>
</a>
</g>
</g>
<!-- t3_space -->
<g id="node95" class="node">
<title>t3_space</title>
<g id="a_node95"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/t3_space" xlink:title="t3_space">
<polygon fill="none" stroke="black" points="15804.51,-1667 15723.51,-1667 15723.51,-1636 15804.51,-1636 15804.51,-1667"/>
<text text-anchor="middle" x="15764.01" y="-1647.8" font-family="Courier,monospace" font-size="14.00">t3_space</text>
</a>
</g>
</g>
<!-- t3_space&#45;&gt;t1_space -->
<g id="edge214" class="edge">
<title>t3_space&#45;&gt;t1_space</title>
<g id="a_edge214"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/t3_space.t1_space" xlink:title="t3_space.t1_space">
<path fill="none" stroke="black" d="M15723.01,-1643.9C15707.01,-1641.5 15688.01,-1638.8 15671.01,-1636.5 15541.01,-1619.1 15174.01,-1662.5 15087.01,-1564.5 15034.01,-1504.9 15253.01,-1501.4 15210.01,-1434.5 15194.01,-1410 15123.01,-1382.1 15072.01,-1365"/>
<polygon fill="black" stroke="black" points="15073.61,-1361.85 15063.01,-1361.8 15071.26,-1368.45 15073.61,-1361.85"/>
</a>
</g>
</g>
<!-- t3_space&#45;&gt;t0_space -->
<g id="edge215" class="edge">
<title>t3_space&#45;&gt;t0_space</title>
<g id="a_edge215"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/t3_space.to_t0_space" xlink:title="t3_space.to_t0_space">
<path fill="none" stroke="black" d="M15805.01,-1644.3C15879.01,-1632.9 16033.01,-1605 16066.01,-1564.5 16084.01,-1542.1 16073.01,-1463.3 16076.01,-1434.5 16082.01,-1375.9 16091.01,-1307.2 16096.01,-1271.8"/>
<polygon fill="black" stroke="black" points="16099.53,-1271.79 16097.01,-1261.5 16092.56,-1271.11 16099.53,-1271.79"/>
</a>
</g>
</g>
<!-- t2_space -->
<g id="node96" class="node">
<title>t2_space</title>
<g id="a_node96"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/t2_space" xlink:title="t2_space">
<polygon fill="none" stroke="black" points="15343.51,-1464 15262.51,-1464 15262.51,-1433 15343.51,-1433 15343.51,-1464"/>
<text text-anchor="middle" x="15303.01" y="-1444.8" font-family="Courier,monospace" font-size="14.00">t2_space</text>
</a>
</g>
</g>
<!-- t3_space&#45;&gt;t2_space -->
<g id="edge216" class="edge">
<title>t3_space&#45;&gt;t2_space</title>
<g id="a_edge216"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/t3_space.t2_space" xlink:title="t3_space.t2_space">
<path fill="none" stroke="black" d="M15754.01,-1636.4C15734.01,-1612.2 15690.01,-1562 15642.01,-1535.5 15548.01,-1484.2 15423.01,-1463 15354.01,-1454.8"/>
<polygon fill="black" stroke="black" points="15354.36,-1451.32 15344.01,-1453.6 15353.53,-1458.27 15354.36,-1451.32"/>
</a>
</g>
</g>
<!-- t2_5_space -->
<g id="node97" class="node">
<title>t2_5_space</title>
<g id="a_node97"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/t2_5_space" xlink:title="t2_5_space">
<polygon fill="none" stroke="black" points="15634.01,-1566 15536.01,-1566 15536.01,-1535 15634.01,-1535 15634.01,-1566"/>
<text text-anchor="middle" x="15585.01" y="-1546.8" font-family="Courier,monospace" font-size="14.00">t2_5_space</text>
</a>
</g>
</g>
<!-- t3_space&#45;&gt;t2_5_space -->
<g id="edge217" class="edge">
<title>t3_space&#45;&gt;t2_5_space</title>
<g id="a_edge217"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/t3_space.t2_5_space" xlink:title="t3_space.t2_5_space">
<path fill="none" stroke="black" d="M15739.01,-1636.4C15708.01,-1619.1 15654.01,-1588.9 15618.01,-1569.5"/>
<polygon fill="black" stroke="black" points="15620.37,-1566.84 15610.01,-1564.6 15616.71,-1572.81 15620.37,-1566.84"/>
</a>
</g>
</g>
<!-- t2_space&#45;&gt;t1_space -->
<g id="edge218" class="edge">
<title>t2_space&#45;&gt;t1_space</title>
<g id="a_edge218"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/t2_space.t1_space" xlink:title="t2_space.t1_space">
<path fill="none" stroke="black" d="M15265.01,-1434.4C15214.01,-1416.6 15125.01,-1385.3 15070.01,-1365.9"/>
<polygon fill="black" stroke="black" points="15070.61,-1362.41 15060.01,-1362.6 15068.41,-1369.06 15070.61,-1362.41"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular_of_is_haar_measure -->
<g id="node98" class="node">
<title>measure_theory.measure.regular_of_is_haar_measure</title>
<g id="a_node98"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular_of_is_haar_measure" xlink:title="measure_theory.measure.regular_of_is_haar_measure">
<ellipse fill="black" stroke="black" cx="15654.01" cy="-1145.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- t2_space&#45;&gt;measure_theory.measure.regular_of_is_haar_measure -->
<g id="edge219" class="edge">
<title>t2_space&#45;&gt;measure_theory.measure.regular_of_is_haar_measure</title>
<g id="a_edge219"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular_of_is_haar_measure" xlink:title="measure_theory.measure.regular_of_is_haar_measure">
<path fill="none" stroke="black" d="M15335.01,-1434.5C15363.01,-1420.8 15402.01,-1396.9 15419.01,-1362.5 15446.01,-1309.7 15356.01,-1280.3 15391.01,-1232.5 15423.01,-1189.1 15599.01,-1156.3 15644.01,-1148.7"/>
<polygon fill="black" stroke="black" points="15644.74,-1152.13 15654.01,-1147 15643.57,-1145.23 15644.74,-1152.13"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular_of_is_add_haar_measure -->
<g id="node99" class="node">
<title>measure_theory.measure.regular_of_is_add_haar_measure</title>
<g id="a_node99"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular_of_is_add_haar_measure" xlink:title="measure_theory.measure.regular_of_is_add_haar_measure">
<ellipse fill="black" stroke="black" cx="15560.01" cy="-1145.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- t2_space&#45;&gt;measure_theory.measure.regular_of_is_add_haar_measure -->
<g id="edge220" class="edge">
<title>t2_space&#45;&gt;measure_theory.measure.regular_of_is_add_haar_measure</title>
<g id="a_edge220"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular_of_is_add_haar_measure" xlink:title="measure_theory.measure.regular_of_is_add_haar_measure">
<path fill="none" stroke="black" d="M15294.01,-1434.5C15284.01,-1418.2 15268.01,-1389.6 15262.01,-1362.5 15248.01,-1300.8 15271.01,-1273.1 15320.01,-1232.5 15358.01,-1201.1 15510.01,-1160 15550.01,-1149.5"/>
<polygon fill="black" stroke="black" points="15551.16,-1152.82 15560.01,-1147 15549.46,-1146.03 15551.16,-1152.82"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular.neg -->
<g id="node100" class="node">
<title>measure_theory.measure.regular.neg</title>
<g id="a_node100"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.neg" xlink:title="measure_theory.measure.regular.neg">
<ellipse fill="black" stroke="black" cx="15436.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- t2_space&#45;&gt;measure_theory.measure.regular.neg -->
<g id="edge221" class="edge">
<title>t2_space&#45;&gt;measure_theory.measure.regular.neg</title>
<g id="a_edge221"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.neg" xlink:title="measure_theory.measure.regular.neg">
<path fill="none" stroke="black" d="M15276.01,-1434.3C15250.01,-1420 15212.01,-1395 15191.01,-1362.5 15159.01,-1313.1 15136.01,-1281.6 15168.01,-1232.5 15212.01,-1165.3 15279.01,-1219.6 15334.01,-1160.5 15449.01,-1036.2 15440.01,-804.6 15437.01,-753.24"/>
<polygon fill="black" stroke="black" points="15440.47,-752.64 15436.01,-743.03 15433.51,-753.32 15440.47,-752.64"/>
</a>
</g>
</g>
<!-- locally_compact_of_compact -->
<g id="node101" class="node">
<title>locally_compact_of_compact</title>
<g id="a_node101"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/locally_compact_of_compact" xlink:title="locally_compact_of_compact">
<ellipse fill="black" stroke="black" cx="15509.01" cy="-1347.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- t2_space&#45;&gt;locally_compact_of_compact -->
<g id="edge222" class="edge">
<title>t2_space&#45;&gt;locally_compact_of_compact</title>
<g id="a_edge222"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/locally_compact_of_compact" xlink:title="locally_compact_of_compact">
<path fill="none" stroke="black" d="M15344.01,-1434.6C15384.01,-1420.2 15447.01,-1395 15495.01,-1362.5 15498.01,-1360.8 15500.01,-1358.6 15502.01,-1356.5"/>
<polygon fill="black" stroke="black" points="15504.68,-1358.77 15509.01,-1349.1 15499.6,-1353.96 15504.68,-1358.77"/>
</a>
</g>
</g>
<!-- paracompact_of_locally_compact_sigma_compact -->
<g id="node102" class="node">
<title>paracompact_of_locally_compact_sigma_compact</title>
<g id="a_node102"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/paracompact_of_locally_compact_sigma_compact" xlink:title="paracompact_of_locally_compact_sigma_compact">
<ellipse fill="black" stroke="black" cx="13792.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- t2_space&#45;&gt;paracompact_of_locally_compact_sigma_compact -->
<g id="edge223" class="edge">
<title>t2_space&#45;&gt;paracompact_of_locally_compact_sigma_compact</title>
<g id="a_edge223"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/paracompact_of_locally_compact_sigma_compact" xlink:title="paracompact_of_locally_compact_sigma_compact">
<path fill="none" stroke="black" d="M15269.01,-1434.4C15231.01,-1418.7 15167.01,-1391.3 15115.01,-1362.5 15095.01,-1351.2 15093.01,-1341 15071.01,-1333.5 14632.01,-1185.1 14469.01,-1412.2 14031.01,-1261.5 14009.01,-1254 14009.01,-1242.8 13988.01,-1232.5 13901.01,-1188.9 13837.01,-1239.9 13781.01,-1160.5 13757.01,-1127.1 13782.01,-993.08 13790.01,-955.08"/>
<polygon fill="black" stroke="black" points="13793.48,-955.6 13792.01,-945.11 13786.62,-954.23 13793.48,-955.6"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular.inv -->
<g id="node103" class="node">
<title>measure_theory.measure.regular.inv</title>
<g id="a_node103"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.inv" xlink:title="measure_theory.measure.regular.inv">
<ellipse fill="black" stroke="black" cx="15709.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- t2_space&#45;&gt;measure_theory.measure.regular.inv -->
<g id="edge224" class="edge">
<title>t2_space&#45;&gt;measure_theory.measure.regular.inv</title>
<g id="a_edge224"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.inv" xlink:title="measure_theory.measure.regular.inv">
<path fill="none" stroke="black" d="M15323.01,-1434.4C15343.01,-1419.4 15373.01,-1393.4 15385.01,-1362.5 15407.01,-1308.9 15361.01,-1287.2 15380.01,-1232.5 15411.01,-1140.5 15472.01,-1147.2 15514.01,-1059.5 15525.01,-1035.7 15553.01,-849.83 15569.01,-828.48 15604.01,-780.84 15674.01,-754.39 15699.01,-745.97"/>
<polygon fill="black" stroke="black" points="15700.42,-749.2 15709.01,-743 15698.43,-742.49 15700.42,-749.2"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular.weakly_regular -->
<g id="node104" class="node">
<title>measure_theory.measure.regular.weakly_regular</title>
<g id="a_node104"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.weakly_regular" xlink:title="measure_theory.measure.regular.weakly_regular">
<ellipse fill="black" stroke="black" cx="15512.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- t2_space&#45;&gt;measure_theory.measure.regular.weakly_regular -->
<g id="edge225" class="edge">
<title>t2_space&#45;&gt;measure_theory.measure.regular.weakly_regular</title>
<g id="a_edge225"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.weakly_regular" xlink:title="measure_theory.measure.regular.weakly_regular">
<path fill="none" stroke="black" d="M15293.01,-1434.3C15267.01,-1398.9 15205.01,-1302.2 15244.01,-1232.5 15273.01,-1179.7 15309.01,-1194.7 15359.01,-1160.5 15420.01,-1118.2 15458.01,-1125.2 15493.01,-1059.5 15551.01,-952.28 15523.01,-794.31 15514.01,-753.1"/>
<polygon fill="black" stroke="black" points="15517.41,-752.24 15512.01,-743.12 15510.55,-753.61 15517.41,-752.24"/>
</a>
</g>
</g>
<!-- baire_category_theorem_locally_compact -->
<g id="node105" class="node">
<title>baire_category_theorem_locally_compact</title>
<g id="a_node105"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/baire_category_theorem_locally_compact" xlink:title="baire_category_theorem_locally_compact">
<ellipse fill="black" stroke="black" cx="13362.01" cy="-1145.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- t2_space&#45;&gt;baire_category_theorem_locally_compact -->
<g id="edge226" class="edge">
<title>t2_space&#45;&gt;baire_category_theorem_locally_compact</title>
<g id="a_edge226"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/baire_category_theorem_locally_compact" xlink:title="baire_category_theorem_locally_compact">
<path fill="none" stroke="black" d="M15262.01,-1437.3C15173.01,-1414.5 14954.01,-1360.5 14767.01,-1333.5 14351.01,-1273.4 14237.01,-1335.4 13823.01,-1261.5 13777.01,-1253.2 13767.01,-1243.8 13721.01,-1232.5 13569.01,-1195.1 13514.01,-1233.7 13376.01,-1160.5 13373.01,-1159.1 13371.01,-1157 13369.01,-1154.9"/>
<polygon fill="black" stroke="black" points="13371.3,-1152.2 13362.01,-1147.1 13366.09,-1156.88 13371.3,-1152.2"/>
</a>
</g>
</g>
<!-- quasi_sober -->
<g id="node106" class="node">
<title>quasi_sober</title>
<g id="a_node106"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/quasi_sober" xlink:title="quasi_sober">
<polygon fill="none" stroke="black" points="15377.01,-1363 15271.01,-1363 15271.01,-1332 15377.01,-1332 15377.01,-1363"/>
<text text-anchor="middle" x="15324.01" y="-1343.8" font-family="Courier,monospace" font-size="14.00">quasi_sober</text>
</a>
</g>
</g>
<!-- t2_space&#45;&gt;quasi_sober -->
<g id="edge227" class="edge">
<title>t2_space&#45;&gt;quasi_sober</title>
<g id="a_edge227"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/t2_space.quasi_sober" xlink:title="t2_space.quasi_sober">
<path fill="none" stroke="black" d="M15306.01,-1434.2C15309.01,-1418.3 15315.01,-1391.7 15319.01,-1372.5"/>
<polygon fill="black" stroke="black" points="15322.46,-1373.1 15321.01,-1362.6 15315.6,-1371.71 15322.46,-1373.1"/>
</a>
</g>
</g>
<!-- t2_5_space&#45;&gt;t2_space -->
<g id="edge228" class="edge">
<title>t2_5_space&#45;&gt;t2_space</title>
<g id="a_edge228"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/t2_5_space.t2_space" xlink:title="t2_5_space.t2_space">
<path fill="none" stroke="black" d="M15546.01,-1535.4C15496.01,-1517.6 15406.01,-1486.3 15351.01,-1466.9"/>
<polygon fill="black" stroke="black" points="15352.61,-1463.76 15342.01,-1463.6 15350.2,-1470.33 15352.61,-1463.76"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular -->
<g id="node107" class="node">
<title>measure_theory.measure.regular</title>
<g id="a_node107"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular" xlink:title="measure_theory.measure.regular">
<polygon fill="none" stroke="black" points="15842.01,-857.98 15576.01,-857.98 15576.01,-826.98 15842.01,-826.98 15842.01,-857.98"/>
<text text-anchor="middle" x="15709.01" y="-838.78" font-family="Courier,monospace" font-size="14.00">measure_theory.measure.regular</text>
</a>
</g>
</g>
<!-- measure_theory.measure.regular_of_is_haar_measure&#45;&gt;measure_theory.measure.regular -->
<g id="edge229" class="edge">
<title>measure_theory.measure.regular_of_is_haar_measure&#45;&gt;measure_theory.measure.regular</title>
<g id="a_edge229"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular_of_is_haar_measure" xlink:title="measure_theory.measure.regular_of_is_haar_measure">
<path fill="none" stroke="black" d="M15654.01,-1144.9C15655.01,-1141.1 15692.01,-937.84 15705.01,-867.58"/>
<polygon fill="black" stroke="black" points="15708.5,-867.98 15707.01,-857.49 15701.64,-866.62 15708.5,-867.98"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular_of_is_add_haar_measure&#45;&gt;measure_theory.measure.regular -->
<g id="edge230" class="edge">
<title>measure_theory.measure.regular_of_is_add_haar_measure&#45;&gt;measure_theory.measure.regular</title>
<g id="a_edge230"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular_of_is_add_haar_measure" xlink:title="measure_theory.measure.regular_of_is_add_haar_measure">
<path fill="none" stroke="black" d="M15560.01,-1144.9C15560.01,-1140.9 15562.01,-1012.5 15612.01,-929.48 15629.01,-901.99 15657.01,-878.53 15679.01,-863.18"/>
<polygon fill="black" stroke="black" points="15680.89,-866.14 15687.01,-857.5 15676.83,-860.44 15680.89,-866.14"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular.neg&#45;&gt;measure_theory.measure.regular -->
<g id="edge231" class="edge">
<title>measure_theory.measure.regular.neg&#45;&gt;measure_theory.measure.regular</title>
<g id="a_edge231"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.neg" xlink:title="measure_theory.measure.regular.neg">
<path fill="none" stroke="black" d="M15436.01,-742.99C15445.01,-743.85 15592.01,-796.67 15667.01,-824.79"/>
<polygon fill="black" stroke="black" points="15665.43,-827.93 15676.01,-828.42 15668.05,-821.43 15665.43,-827.93"/>
</a>
</g>
</g>
<!-- locally_compact_space -->
<g id="node108" class="node">
<title>locally_compact_space</title>
<g id="a_node108"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/locally_compact_space" xlink:title="locally_compact_space">
<polygon fill="none" stroke="black" points="15589.01,-1262 15399.01,-1262 15399.01,-1231 15589.01,-1231 15589.01,-1262"/>
<text text-anchor="middle" x="15494.01" y="-1242.8" font-family="Courier,monospace" font-size="14.00">locally_compact_space</text>
</a>
</g>
</g>
<!-- locally_compact_of_compact&#45;&gt;locally_compact_space -->
<g id="edge232" class="edge">
<title>locally_compact_of_compact&#45;&gt;locally_compact_space</title>
<g id="a_edge232"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/locally_compact_of_compact" xlink:title="locally_compact_of_compact">
<path fill="none" stroke="black" d="M15509.01,-1346.9C15509.01,-1344.9 15502.01,-1300.5 15498.01,-1271.9"/>
<polygon fill="black" stroke="black" points="15501.39,-1270.93 15496.01,-1261.8 15494.52,-1272.29 15501.39,-1270.93"/>
</a>
</g>
</g>
<!-- paracompact_space -->
<g id="node109" class="node">
<title>paracompact_space</title>
<g id="a_node109"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/paracompact_space" xlink:title="paracompact_space">
<polygon fill="none" stroke="black" points="13828.51,-857.98 13671.51,-857.98 13671.51,-826.98 13828.51,-826.98 13828.51,-857.98"/>
<text text-anchor="middle" x="13750.01" y="-838.78" font-family="Courier,monospace" font-size="14.00">paracompact_space</text>
</a>
</g>
</g>
<!-- paracompact_of_locally_compact_sigma_compact&#45;&gt;paracompact_space -->
<g id="edge233" class="edge">
<title>paracompact_of_locally_compact_sigma_compact&#45;&gt;paracompact_space</title>
<g id="a_edge233"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/paracompact_of_locally_compact_sigma_compact" xlink:title="paracompact_of_locally_compact_sigma_compact">
<path fill="none" stroke="black" d="M13792.01,-942.91C13791.01,-940.87 13772.01,-895.68 13760.01,-867.09"/>
<polygon fill="black" stroke="black" points="13763.17,-865.58 13756.01,-857.77 13756.74,-868.34 13763.17,-865.58"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular.inv&#45;&gt;measure_theory.measure.regular -->
<g id="edge234" class="edge">
<title>measure_theory.measure.regular.inv&#45;&gt;measure_theory.measure.regular</title>
<g id="a_edge234"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.inv" xlink:title="measure_theory.measure.regular.inv">
<path fill="none" stroke="black" d="M15709.01,-743.02C15715.01,-744.59 15717.01,-789.31 15715.01,-818.09"/>
<polygon fill="black" stroke="black" points="15711.51,-817.91 15714.01,-828.21 15718.48,-818.6 15711.51,-817.91"/>
</a>
</g>
</g>
<!-- measure_theory.measure.weakly_regular -->
<g id="node110" class="node">
<title>measure_theory.measure.weakly_regular</title>
<g id="a_node110"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.weakly_regular" xlink:title="measure_theory.measure.weakly_regular">
<polygon fill="none" stroke="black" points="15575.51,-655.98 15250.51,-655.98 15250.51,-624.98 15575.51,-624.98 15575.51,-655.98"/>
<text text-anchor="middle" x="15413.01" y="-636.78" font-family="Courier,monospace" font-size="14.00">measure_theory.measure.weakly_regular</text>
</a>
</g>
</g>
<!-- measure_theory.measure.regular.weakly_regular&#45;&gt;measure_theory.measure.weakly_regular -->
<g id="edge235" class="edge">
<title>measure_theory.measure.regular.weakly_regular&#45;&gt;measure_theory.measure.weakly_regular</title>
<g id="a_edge235"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.weakly_regular" xlink:title="measure_theory.measure.regular.weakly_regular">
<path fill="none" stroke="black" d="M15512.01,-740.91C15510.01,-738.81 15462.01,-691.28 15434.01,-662.88"/>
<polygon fill="black" stroke="black" points="15436.52,-660.44 15427.01,-655.77 15431.54,-665.35 15436.52,-660.44"/>
</a>
</g>
</g>
<!-- baire_space -->
<g id="node111" class="node">
<title>baire_space</title>
<g id="a_node111"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/baire_space" xlink:title="baire_space">
<polygon fill="none" stroke="black" points="12928.01,-1060 12822.01,-1060 12822.01,-1029 12928.01,-1029 12928.01,-1060"/>
<text text-anchor="middle" x="12875.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">baire_space</text>
</a>
</g>
</g>
<!-- baire_category_theorem_locally_compact&#45;&gt;baire_space -->
<g id="edge236" class="edge">
<title>baire_category_theorem_locally_compact&#45;&gt;baire_space</title>
<g id="a_edge236"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/baire_category_theorem_locally_compact" xlink:title="baire_category_theorem_locally_compact">
<path fill="none" stroke="black" d="M13362.01,-1145C13356.01,-1143.8 13068.01,-1085.2 12938.01,-1058.7"/>
<polygon fill="black" stroke="black" points="12938.51,-1055.23 12928.01,-1056.7 12937.13,-1062.09 12938.51,-1055.23"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular&#45;&gt;measure_theory.measure.regular.neg -->
<g id="edge1029" class="edge">
<title>measure_theory.measure.regular&#45;&gt;measure_theory.measure.regular.neg</title>
<g id="a_edge1029"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.neg" xlink:title="measure_theory.measure.regular.neg">
<path fill="none" stroke="black" d="M15667.01,-828.42C15601.01,-805.8 15480.01,-761.44 15445.01,-747.37"/>
<polygon fill="black" stroke="black" points="15446.54,-744.22 15436.01,-743.02 15443.49,-750.52 15446.54,-744.22"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular&#45;&gt;measure_theory.measure.regular.inv -->
<g id="edge1030" class="edge">
<title>measure_theory.measure.regular&#45;&gt;measure_theory.measure.regular.inv</title>
<g id="a_edge1030"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.inv" xlink:title="measure_theory.measure.regular.inv">
<path fill="none" stroke="black" d="M15704.01,-828.21C15701.01,-807.82 15702.01,-770.09 15705.01,-752.49"/>
<polygon fill="black" stroke="black" points="15708.35,-753.59 15709.01,-743.02 15701.9,-750.87 15708.35,-753.59"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular&#45;&gt;measure_theory.measure.regular.weakly_regular -->
<g id="edge1031" class="edge">
<title>measure_theory.measure.regular&#45;&gt;measure_theory.measure.regular.weakly_regular</title>
<g id="a_edge1031"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.weakly_regular" xlink:title="measure_theory.measure.regular.weakly_regular">
<path fill="none" stroke="black" d="M15682.01,-828.42C15637.01,-805.9 15550.01,-761.85 15521.01,-747.57"/>
<polygon fill="black" stroke="black" points="15522.52,-744.41 15512.01,-743.02 15519.36,-750.66 15522.52,-744.41"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular.sigma_finite -->
<g id="node223" class="node">
<title>measure_theory.measure.regular.sigma_finite</title>
<g id="a_node223"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.sigma_finite" xlink:title="measure_theory.measure.regular.sigma_finite">
<ellipse fill="black" stroke="black" cx="16396.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular&#45;&gt;measure_theory.measure.regular.sigma_finite -->
<g id="edge1033" class="edge">
<title>measure_theory.measure.regular&#45;&gt;measure_theory.measure.regular.sigma_finite</title>
<g id="a_edge1033"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.sigma_finite" xlink:title="measure_theory.measure.regular.sigma_finite">
<path fill="none" stroke="black" d="M15803.01,-828.47C15973.01,-803.9 16322.01,-753.58 16386.01,-744.43"/>
<polygon fill="black" stroke="black" points="16386.61,-747.88 16396.01,-742.99 16385.62,-740.95 16386.61,-747.88"/>
</a>
</g>
</g>
<!-- measure_theory.is_finite_measure_on_compacts -->
<g id="node522" class="node">
<title>measure_theory.is_finite_measure_on_compacts</title>
<g id="a_node522"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.is_finite_measure_on_compacts" xlink:title="measure_theory.is_finite_measure_on_compacts">
<polygon fill="none" stroke="black" points="17115.01,-756.98 16731.01,-756.98 16731.01,-725.98 17115.01,-725.98 17115.01,-756.98"/>
<text text-anchor="middle" x="16923.01" y="-737.78" font-family="Courier,monospace" font-size="14.00">measure_theory.is_finite_measure_on_compacts</text>
</a>
</g>
</g>
<!-- measure_theory.measure.regular&#45;&gt;measure_theory.is_finite_measure_on_compacts -->
<g id="edge1032" class="edge">
<title>measure_theory.measure.regular&#45;&gt;measure_theory.is_finite_measure_on_compacts</title>
<g id="a_edge1032"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.to_is_finite_measure_on_compacts" xlink:title="measure_theory.measure.regular.to_is_finite_measure_on_compacts">
<path fill="none" stroke="black" d="M15840.01,-831.29C16059.01,-813.4 16501.01,-777.39 16747.01,-757.32"/>
<polygon fill="black" stroke="black" points="16747.34,-760.81 16757.01,-756.49 16746.76,-753.83 16747.34,-760.81"/>
</a>
</g>
</g>
<!-- measure_theory.measure.outer_regular -->
<g id="node523" class="node">
<title>measure_theory.measure.outer_regular</title>
<g id="a_node523"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.outer_regular" xlink:title="measure_theory.measure.outer_regular">
<polygon fill="none" stroke="black" points="15638.01,-554.98 15322.01,-554.98 15322.01,-523.98 15638.01,-523.98 15638.01,-554.98"/>
<text text-anchor="middle" x="15480.01" y="-535.78" font-family="Courier,monospace" font-size="14.00">measure_theory.measure.outer_regular</text>
</a>
</g>
</g>
<!-- measure_theory.measure.regular&#45;&gt;measure_theory.measure.outer_regular -->
<g id="edge1034" class="edge">
<title>measure_theory.measure.regular&#45;&gt;measure_theory.measure.outer_regular</title>
<g id="a_edge1034"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.to_outer_regular" xlink:title="measure_theory.measure.regular.to_outer_regular">
<path fill="none" stroke="black" d="M15703.01,-828.34C15687.01,-792.68 15640.01,-694.74 15582.01,-626.48 15560.01,-600.8 15530.01,-576.66 15508.01,-560.63"/>
<polygon fill="black" stroke="black" points="15510.13,-557.84 15500.01,-554.68 15505.95,-563.46 15510.13,-557.84"/>
</a>
</g>
</g>
<!-- locally_compact_space&#45;&gt;measure_theory.measure.is_haar_measure.has_no_atoms -->
<g id="edge594" class="edge">
<title>locally_compact_space&#45;&gt;measure_theory.measure.is_haar_measure.has_no_atoms</title>
<g id="a_edge594"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_haar_measure.has_no_atoms" xlink:title="measure_theory.measure.is_haar_measure.has_no_atoms">
<path fill="none" stroke="black" d="M15515.01,-1232.3C15544.01,-1210.8 15593.01,-1167.9 15569.01,-1131.5 15525.01,-1064.6 15468.01,-1107.8 15404.01,-1059.5 15320.01,-996 15252.01,-884.78 15233.01,-852.81"/>
<polygon fill="black" stroke="black" points="15236.02,-851.02 15228.01,-844.08 15229.95,-854.5 15236.02,-851.02"/>
</a>
</g>
</g>
<!-- locally_compact_space&#45;&gt;measure_theory.measure.is_add_haar_measure.has_no_atoms -->
<g id="edge595" class="edge">
<title>locally_compact_space&#45;&gt;measure_theory.measure.is_add_haar_measure.has_no_atoms</title>
<g id="a_edge595"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_add_haar_measure.has_no_atoms" xlink:title="measure_theory.measure.is_add_haar_measure.has_no_atoms">
<path fill="none" stroke="black" d="M15400.01,-1244.5C15063.01,-1238.8 13933.01,-1215.6 13880.01,-1160.5 13795.01,-1071.7 13856.01,-896.05 13872.01,-853.45"/>
<polygon fill="black" stroke="black" points="13875.28,-854.71 13876.01,-844.14 13868.85,-851.95 13875.28,-854.71"/>
</a>
</g>
</g>
<!-- locally_compact_space&#45;&gt;measure_theory.measure.regular_of_is_haar_measure -->
<g id="edge596" class="edge">
<title>locally_compact_space&#45;&gt;measure_theory.measure.regular_of_is_haar_measure</title>
<g id="a_edge596"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular_of_is_haar_measure" xlink:title="measure_theory.measure.regular_of_is_haar_measure">
<path fill="none" stroke="black" d="M15522.01,-1232.4C15552.01,-1216.8 15601.01,-1189.8 15640.01,-1160.5 15642.01,-1158.7 15645.01,-1156.5 15647.01,-1154.4"/>
<polygon fill="black" stroke="black" points="15649.62,-1156.74 15654.01,-1147.1 15644.57,-1151.9 15649.62,-1156.74"/>
</a>
</g>
</g>
<!-- locally_compact_space&#45;&gt;measure_theory.measure.regular_of_is_add_haar_measure -->
<g id="edge597" class="edge">
<title>locally_compact_space&#45;&gt;measure_theory.measure.regular_of_is_add_haar_measure</title>
<g id="a_edge597"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular_of_is_add_haar_measure" xlink:title="measure_theory.measure.regular_of_is_add_haar_measure">
<path fill="none" stroke="black" d="M15503.01,-1232.2C15517.01,-1211.4 15543.01,-1172.6 15554.01,-1155.5"/>
<polygon fill="black" stroke="black" points="15556.99,-1157.35 15560.01,-1147.2 15551.32,-1153.25 15556.99,-1157.35"/>
</a>
</g>
</g>
<!-- locally_compact_space&#45;&gt;paracompact_of_locally_compact_sigma_compact -->
<g id="edge598" class="edge">
<title>locally_compact_space&#45;&gt;paracompact_of_locally_compact_sigma_compact</title>
<g id="a_edge598"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/paracompact_of_locally_compact_sigma_compact" xlink:title="paracompact_of_locally_compact_sigma_compact">
<path fill="none" stroke="black" d="M15400.01,-1244.2C15058.01,-1237.4 13902.01,-1210.8 13842.01,-1160.5 13779.01,-1107.3 13786.01,-990.87 13791.01,-955.43"/>
<polygon fill="black" stroke="black" points="13794.54,-955.38 13792.01,-945.09 13787.57,-954.71 13794.54,-955.38"/>
</a>
</g>
</g>
<!-- locally_compact_space&#45;&gt;baire_category_theorem_locally_compact -->
<g id="edge599" class="edge">
<title>locally_compact_space&#45;&gt;baire_category_theorem_locally_compact</title>
<g id="a_edge599"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/baire_category_theorem_locally_compact" xlink:title="baire_category_theorem_locally_compact">
<path fill="none" stroke="black" d="M15400.01,-1244.1C15001.01,-1235.6 13470.01,-1200.7 13376.01,-1160.5 13373.01,-1159.3 13371.01,-1157.3 13369.01,-1155.2"/>
<polygon fill="black" stroke="black" points="13371.2,-1152.38 13362.01,-1147.1 13365.9,-1156.95 13371.2,-1152.38"/>
</a>
</g>
</g>
<!-- locally_compact_space&#45;&gt;measure_theory.measure.regular -->
<g id="edge603" class="edge">
<title>locally_compact_space&#45;&gt;measure_theory.measure.regular</title>
<g id="a_edge603"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.content.regular" xlink:title="measure_theory.content.regular">
<path fill="none" stroke="black" d="M15518.01,-1232.4C15543.01,-1217.7 15580.01,-1192 15602.01,-1160.5 15620.01,-1135.5 15681.01,-937.19 15702.01,-867.83"/>
<polygon fill="black" stroke="black" points="15705.49,-868.43 15705.01,-857.85 15698.78,-866.42 15705.49,-868.43"/>
</a>
</g>
</g>
<!-- separable_locally_compact_add_group.sigma_compact_space -->
<g id="node192" class="node">
<title>separable_locally_compact_add_group.sigma_compact_space</title>
<g id="a_node192"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/separable_locally_compact_add_group.sigma_compact_space" xlink:title="separable_locally_compact_add_group.sigma_compact_space">
<ellipse fill="black" stroke="black" cx="16282.01" cy="-1145.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- locally_compact_space&#45;&gt;separable_locally_compact_add_group.sigma_compact_space -->
<g id="edge600" class="edge">
<title>locally_compact_space&#45;&gt;separable_locally_compact_add_group.sigma_compact_space</title>
<g id="a_edge600"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/separable_locally_compact_add_group.sigma_compact_space" xlink:title="separable_locally_compact_add_group.sigma_compact_space">
<path fill="none" stroke="black" d="M15588.01,-1239.2C15763.01,-1226 16130.01,-1195 16253.01,-1160.5 16260.01,-1158.5 16268.01,-1155 16273.01,-1152.1"/>
<polygon fill="black" stroke="black" points="16275.04,-1154.98 16282.01,-1147 16271.59,-1148.89 16275.04,-1154.98"/>
</a>
</g>
</g>
<!-- sigma_compact_space_of_locally_compact_second_countable -->
<g id="node315" class="node">
<title>sigma_compact_space_of_locally_compact_second_countable</title>
<g id="a_node315"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/sigma_compact_space_of_locally_compact_second_countable" xlink:title="sigma_compact_space_of_locally_compact_second_countable">
<ellipse fill="black" stroke="black" cx="16244.01" cy="-1145.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- locally_compact_space&#45;&gt;sigma_compact_space_of_locally_compact_second_countable -->
<g id="edge601" class="edge">
<title>locally_compact_space&#45;&gt;sigma_compact_space_of_locally_compact_second_countable</title>
<g id="a_edge601"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/sigma_compact_space_of_locally_compact_second_countable" xlink:title="sigma_compact_space_of_locally_compact_second_countable">
<path fill="none" stroke="black" d="M15588.01,-1233.6C15772.01,-1209.3 16165.01,-1157.4 16234.01,-1148.4"/>
<polygon fill="black" stroke="black" points="16234.6,-1151.85 16244.01,-1147 16233.63,-1144.92 16234.6,-1151.85"/>
</a>
</g>
</g>
<!-- separable_locally_compact_group.sigma_compact_space -->
<g id="node317" class="node">
<title>separable_locally_compact_group.sigma_compact_space</title>
<g id="a_node317"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/separable_locally_compact_group.sigma_compact_space" xlink:title="separable_locally_compact_group.sigma_compact_space">
<ellipse fill="black" stroke="black" cx="16315.01" cy="-1145.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- locally_compact_space&#45;&gt;separable_locally_compact_group.sigma_compact_space -->
<g id="edge602" class="edge">
<title>locally_compact_space&#45;&gt;separable_locally_compact_group.sigma_compact_space</title>
<g id="a_edge602"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/separable_locally_compact_group.sigma_compact_space" xlink:title="separable_locally_compact_group.sigma_compact_space">
<path fill="none" stroke="black" d="M15588.01,-1238.1C15785.01,-1221.2 16225.01,-1181.5 16291.01,-1160.5 16296.01,-1158.8 16302.01,-1155.7 16307.01,-1152.9"/>
<polygon fill="black" stroke="black" points="16308.97,-1155.8 16315.01,-1147.1 16304.86,-1150.14 16308.97,-1155.8"/>
</a>
</g>
</g>
<!-- measure_theory.measure.is_locally_finite_measure_of_is_haar_measure -->
<g id="node318" class="node">
<title>measure_theory.measure.is_locally_finite_measure_of_is_haar_measure</title>
<g id="a_node318"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_locally_finite_measure_of_is_haar_measure" xlink:title="measure_theory.measure.is_locally_finite_measure_of_is_haar_measure">
<ellipse fill="black" stroke="black" cx="16498.01" cy="-1145.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- locally_compact_space&#45;&gt;measure_theory.measure.is_locally_finite_measure_of_is_haar_measure -->
<g id="edge604" class="edge">
<title>locally_compact_space&#45;&gt;measure_theory.measure.is_locally_finite_measure_of_is_haar_measure</title>
<g id="a_edge604"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_locally_finite_measure_of_is_haar_measure" xlink:title="measure_theory.measure.is_locally_finite_measure_of_is_haar_measure">
<path fill="none" stroke="black" d="M15588.01,-1240.1C15829.01,-1224.8 16451.01,-1183.2 16489.01,-1160.5 16491.01,-1159.5 16492.01,-1158 16493.01,-1156.3"/>
<polygon fill="black" stroke="black" points="16496.31,-1157.56 16498.01,-1147.1 16490.16,-1154.21 16496.31,-1157.56"/>
</a>
</g>
</g>
<!-- measure_theory.measure.is_locally_finite_measure_of_is_add_haar_measure -->
<g id="node319" class="node">
<title>measure_theory.measure.is_locally_finite_measure_of_is_add_haar_measure</title>
<g id="a_node319"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_locally_finite_measure_of_is_add_haar_measure" xlink:title="measure_theory.measure.is_locally_finite_measure_of_is_add_haar_measure">
<ellipse fill="black" stroke="black" cx="16480.01" cy="-1145.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- locally_compact_space&#45;&gt;measure_theory.measure.is_locally_finite_measure_of_is_add_haar_measure -->
<g id="edge605" class="edge">
<title>locally_compact_space&#45;&gt;measure_theory.measure.is_locally_finite_measure_of_is_add_haar_measure</title>
<g id="a_edge605"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_locally_finite_measure_of_is_add_haar_measure" xlink:title="measure_theory.measure.is_locally_finite_measure_of_is_add_haar_measure">
<path fill="none" stroke="black" d="M15588.01,-1236.6C15816.01,-1213.6 16387.01,-1156.3 16470.01,-1148"/>
<polygon fill="black" stroke="black" points="16470.41,-1151.48 16480.01,-1147 16469.72,-1144.51 16470.41,-1151.48"/>
</a>
</g>
</g>
<!-- measure_theory.measure.weakly_regular&#45;&gt;measure_theory.measure.outer_regular -->
<g id="edge1050" class="edge">
<title>measure_theory.measure.weakly_regular&#45;&gt;measure_theory.measure.outer_regular</title>
<g id="a_edge1050"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.weakly_regular.to_outer_regular" xlink:title="measure_theory.measure.weakly_regular.to_outer_regular">
<path fill="none" stroke="black" d="M15422.01,-626.21C15433.01,-609.89 15452.01,-582.45 15465.01,-563.12"/>
<polygon fill="black" stroke="black" points="15468.1,-564.82 15471.01,-554.63 15462.38,-560.78 15468.1,-564.82"/>
</a>
</g>
</g>
<!-- countable_Inter_filter -->
<g id="node508" class="node">
<title>countable_Inter_filter</title>
<g id="a_node508"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/countable_Inter_filter" xlink:title="countable_Inter_filter">
<polygon fill="none" stroke="black" points="13149.51,-958.98 12950.51,-958.98 12950.51,-927.98 13149.51,-927.98 13149.51,-958.98"/>
<text text-anchor="middle" x="13050.01" y="-939.78" font-family="Courier,monospace" font-size="14.00">countable_Inter_filter</text>
</a>
</g>
</g>
<!-- baire_space&#45;&gt;countable_Inter_filter -->
<g id="edge1258" class="edge">
<title>baire_space&#45;&gt;countable_Inter_filter</title>
<g id="a_edge1258"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/residual.countable_Inter_filter" xlink:title="residual.countable_Inter_filter">
<path fill="none" stroke="black" d="M12899.01,-1030.4C12930.01,-1013.1 12983.01,-982.92 13017.01,-963.47"/>
<polygon fill="black" stroke="black" points="13018.93,-966.41 13026.01,-958.53 13015.56,-960.27 13018.93,-966.41"/>
</a>
</g>
</g>
<!-- filter.tendsto_Ixx_class -->
<g id="node112" class="node">
<title>filter.tendsto_Ixx_class</title>
<g id="a_node112"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.tendsto_Ixx_class" xlink:title="filter.tendsto_Ixx_class">
<polygon fill="none" stroke="black" points="11572.01,-1970 11356.01,-1970 11356.01,-1939 11572.01,-1939 11572.01,-1970"/>
<text text-anchor="middle" x="11464.01" y="-1950.8" font-family="Courier,monospace" font-size="14.00">filter.tendsto_Ixx_class</text>
</a>
</g>
</g>
<!-- filter.tendsto_Ixx_class&#45;&gt;filter.tendsto_Ixx_class -->
<g id="edge237" class="edge">
<title>filter.tendsto_Ixx_class&#45;&gt;filter.tendsto_Ixx_class</title>
<g id="a_edge237"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.tendsto_interval_of_Icc" xlink:title="filter.tendsto_interval_of_Icc">
<path fill="none" stroke="black" d="M11503.01,-1968.6C11543.01,-1977.3 11589.01,-1972.4 11589.01,-1954 11589.01,-1937.1 11551.01,-1931.6 11513.01,-1937.6"/>
<polygon fill="black" stroke="black" points="11512.24,-1934.18 11503.01,-1939.4 11513.48,-1941.07 11512.24,-1934.18"/>
</a>
</g>
</g>
<!-- tendsto_Ixx_nhds_within -->
<g id="node113" class="node">
<title>tendsto_Ixx_nhds_within</title>
<g id="a_node113"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/tendsto_Ixx_nhds_within" xlink:title="tendsto_Ixx_nhds_within">
<ellipse fill="black" stroke="black" cx="11436.01" cy="-1852.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- filter.tendsto_Ixx_class&#45;&gt;tendsto_Ixx_nhds_within -->
<g id="edge238" class="edge">
<title>filter.tendsto_Ixx_class&#45;&gt;tendsto_Ixx_nhds_within</title>
<g id="a_edge238"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/tendsto_Ixx_nhds_within" xlink:title="tendsto_Ixx_nhds_within">
<path fill="none" stroke="black" d="M11450.01,-1939.2C11439.01,-1918.5 11429.01,-1879.7 11430.01,-1862.6"/>
<polygon fill="black" stroke="black" points="11433.16,-1864.2 11436.01,-1854 11427.42,-1860.2 11433.16,-1864.2"/>
</a>
</g>
</g>
<!-- filter.tendsto_Ixx_class&#45;&gt;tendsto_Ixx_nhds_within -->
<g id="edge239" class="edge">
<title>filter.tendsto_Ixx_class&#45;&gt;tendsto_Ixx_nhds_within</title>
<g id="a_edge239"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/tendsto_Ixx_nhds_within" xlink:title="tendsto_Ixx_nhds_within">
<path fill="none" stroke="black" d="M11460.01,-1939.2C11454.01,-1919 11444.01,-1881.5 11439.01,-1863.8"/>
<polygon fill="black" stroke="black" points="11442.34,-1862.7 11436.01,-1854.2 11435.66,-1864.79 11442.34,-1862.7"/>
</a>
</g>
</g>
<!-- tendsto_Ixx_nhds_within&#45;&gt;filter.tendsto_Ixx_class -->
<g id="edge240" class="edge">
<title>tendsto_Ixx_nhds_within&#45;&gt;filter.tendsto_Ixx_class</title>
<g id="a_edge240"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/tendsto_Ixx_nhds_within" xlink:title="tendsto_Ixx_nhds_within">
<path fill="none" stroke="black" d="M11436.01,-1854C11449.01,-1854.8 11465.01,-1900 11469.01,-1929"/>
<polygon fill="black" stroke="black" points="11465.55,-1929.59 11470.01,-1939.2 11472.52,-1928.91 11465.55,-1929.59"/>
</a>
</g>
</g>
<!-- comm_monoid_with_zero -->
<g id="node114" class="node">
<title>comm_monoid_with_zero</title>
<g id="a_node114"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_monoid_with_zero" xlink:title="comm_monoid_with_zero">
<polygon fill="none" stroke="black" points="8942.01,-2778 8752.01,-2778 8752.01,-2747 8942.01,-2747 8942.01,-2778"/>
<text text-anchor="middle" x="8847.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">comm_monoid_with_zero</text>
</a>
</g>
</g>
<!-- monoid_with_zero -->
<g id="node115" class="node">
<title>monoid_with_zero</title>
<g id="a_node115"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/monoid_with_zero" xlink:title="monoid_with_zero">
<polygon fill="none" stroke="black" points="9270.01,-2677 9122.01,-2677 9122.01,-2646 9270.01,-2646 9270.01,-2677"/>
<text text-anchor="middle" x="9196.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">monoid_with_zero</text>
</a>
</g>
</g>
<!-- comm_monoid_with_zero&#45;&gt;monoid_with_zero -->
<g id="edge241" class="edge">
<title>comm_monoid_with_zero&#45;&gt;monoid_with_zero</title>
<g id="a_edge241"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_monoid_with_zero.to_monoid_with_zero" xlink:title="comm_monoid_with_zero.to_monoid_with_zero">
<path fill="none" stroke="black" d="M8894.81,-2747.4C8958.31,-2729.4 9070.41,-2697.6 9138.51,-2678.3"/>
<polygon fill="black" stroke="black" points="9139.52,-2681.65 9148.21,-2675.6 9137.64,-2674.91 9139.52,-2681.65"/>
</a>
</g>
</g>
<!-- comm_monoid -->
<g id="node116" class="node">
<title>comm_monoid</title>
<g id="a_node116"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_monoid" xlink:title="comm_monoid">
<polygon fill="none" stroke="black" points="8584.01,-2677 8478.01,-2677 8478.01,-2646 8584.01,-2646 8584.01,-2677"/>
<text text-anchor="middle" x="8531.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">comm_monoid</text>
</a>
</g>
</g>
<!-- comm_monoid_with_zero&#45;&gt;comm_monoid -->
<g id="edge242" class="edge">
<title>comm_monoid_with_zero&#45;&gt;comm_monoid</title>
<g id="a_edge242"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_monoid_with_zero.to_comm_monoid" xlink:title="comm_monoid_with_zero.to_comm_monoid">
<path fill="none" stroke="black" d="M8803.71,-2747.4C8746.41,-2729.5 8645.51,-2697.9 8583.81,-2678.5"/>
<polygon fill="black" stroke="black" points="8584.9,-2675.17 8574.31,-2675.6 8582.86,-2681.87 8584.9,-2675.17"/>
</a>
</g>
</g>
<!-- monoid -->
<g id="node117" class="node">
<title>monoid</title>
<g id="a_node117"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/monoid" xlink:title="monoid">
<polygon fill="none" stroke="black" points="9053.01,-2475 8989.01,-2475 8989.01,-2444 9053.01,-2444 9053.01,-2475"/>
<text text-anchor="middle" x="9021.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">monoid</text>
</a>
</g>
</g>
<!-- monoid_with_zero&#45;&gt;monoid -->
<g id="edge243" class="edge">
<title>monoid_with_zero&#45;&gt;monoid</title>
<g id="a_edge243"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/monoid_with_zero.to_monoid" xlink:title="monoid_with_zero.to_monoid">
<path fill="none" stroke="black" d="M9147.71,-2646.5C9111.91,-2633.8 9064.91,-2611.3 9039.01,-2574.5 9020.11,-2547.7 9018.01,-2508.7 9018.91,-2483.8"/>
<polygon fill="black" stroke="black" points="9022.41,-2483.99 9019.51,-2473.8 9015.42,-2483.57 9022.41,-2483.99"/>
</a>
</g>
</g>
<!-- semigroup_with_zero -->
<g id="node118" class="node">
<title>semigroup_with_zero</title>
<g id="a_node118"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semigroup_with_zero" xlink:title="semigroup_with_zero">
<polygon fill="none" stroke="black" points="8660.01,-2576 8486.01,-2576 8486.01,-2545 8660.01,-2545 8660.01,-2576"/>
<text text-anchor="middle" x="8573.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">semigroup_with_zero</text>
</a>
</g>
</g>
<!-- monoid_with_zero&#45;&gt;semigroup_with_zero -->
<g id="edge244" class="edge">
<title>monoid_with_zero&#45;&gt;semigroup_with_zero</title>
<g id="a_edge244"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/monoid_with_zero.to_semigroup_with_zero" xlink:title="monoid_with_zero.to_semigroup_with_zero">
<path fill="none" stroke="black" d="M9122.41,-2648.3C9009.31,-2630.3 8792.81,-2595.9 8668.01,-2576.1"/>
<polygon fill="black" stroke="black" points="8668.54,-2572.64 8658.11,-2574.5 8667.43,-2579.55 8668.54,-2572.64"/>
</a>
</g>
</g>
<!-- mul_zero_one_class -->
<g id="node119" class="node">
<title>mul_zero_one_class</title>
<g id="a_node119"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_zero_one_class" xlink:title="mul_zero_one_class">
<polygon fill="none" stroke="black" points="9212.51,-2576 9047.51,-2576 9047.51,-2545 9212.51,-2545 9212.51,-2576"/>
<text text-anchor="middle" x="9130.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">mul_zero_one_class</text>
</a>
</g>
</g>
<!-- monoid_with_zero&#45;&gt;mul_zero_one_class -->
<g id="edge245" class="edge">
<title>monoid_with_zero&#45;&gt;mul_zero_one_class</title>
<g id="a_edge245"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/monoid_with_zero.to_mul_zero_one_class" xlink:title="monoid_with_zero.to_mul_zero_one_class">
<path fill="none" stroke="black" d="M9186.81,-2646.2C9175.91,-2629.9 9157.61,-2602.5 9144.81,-2583.1"/>
<polygon fill="black" stroke="black" points="9147.59,-2580.96 9139.11,-2574.6 9141.78,-2584.85 9147.59,-2580.96"/>
</a>
</g>
</g>
<!-- comm_monoid&#45;&gt;monoid -->
<g id="edge246" class="edge">
<title>comm_monoid&#45;&gt;monoid</title>
<g id="a_edge246"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_monoid.to_monoid" xlink:title="comm_monoid.to_monoid">
<path fill="none" stroke="black" d="M8583.71,-2647.9C8641.81,-2633.6 8737.51,-2607.7 8816.01,-2574.5 8881.31,-2546.8 8952.61,-2503.9 8991.51,-2479.2"/>
<polygon fill="black" stroke="black" points="8993.7,-2481.96 9000.21,-2473.6 8989.91,-2476.07 8993.7,-2481.96"/>
</a>
</g>
</g>
<!-- comm_semigroup -->
<g id="node120" class="node">
<title>comm_semigroup</title>
<g id="a_node120"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_semigroup" xlink:title="comm_semigroup">
<polygon fill="none" stroke="black" points="7468.01,-2576 7336.01,-2576 7336.01,-2545 7468.01,-2545 7468.01,-2576"/>
<text text-anchor="middle" x="7402.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">comm_semigroup</text>
</a>
</g>
</g>
<!-- comm_monoid&#45;&gt;comm_semigroup -->
<g id="edge247" class="edge">
<title>comm_monoid&#45;&gt;comm_semigroup</title>
<g id="a_edge247"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_monoid.to_comm_semigroup" xlink:title="comm_monoid.to_comm_semigroup">
<path fill="none" stroke="black" d="M8478.21,-2655.8C8297.51,-2641.5 7704.41,-2594 7514.01,-2574.5 7502.11,-2573.3 7489.61,-2571.9 7477.31,-2570.5"/>
<polygon fill="black" stroke="black" points="7477.48,-2566.99 7467.11,-2569.2 7476.59,-2573.94 7477.48,-2566.99"/>
</a>
</g>
</g>
<!-- mul_one_class -->
<g id="node121" class="node">
<title>mul_one_class</title>
<g id="a_node121"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_one_class" xlink:title="mul_one_class">
<polygon fill="none" stroke="black" points="9258.51,-2374 9135.51,-2374 9135.51,-2343 9258.51,-2343 9258.51,-2374"/>
<text text-anchor="middle" x="9197.01" y="-2354.8" font-family="Courier,monospace" font-size="14.00">mul_one_class</text>
</a>
</g>
</g>
<!-- monoid&#45;&gt;mul_one_class -->
<g id="edge248" class="edge">
<title>monoid&#45;&gt;mul_one_class</title>
<g id="a_edge248"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/monoid.to_mul_one_class" xlink:title="monoid.to_mul_one_class">
<path fill="none" stroke="black" d="M9045.11,-2444.4C9076.01,-2427.1 9129.51,-2396.9 9164.11,-2377.5"/>
<polygon fill="black" stroke="black" points="9165.88,-2380.52 9172.91,-2372.6 9162.47,-2374.41 9165.88,-2380.52"/>
</a>
</g>
</g>
<!-- semigroup -->
<g id="node122" class="node">
<title>semigroup</title>
<g id="a_node122"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semigroup" xlink:title="semigroup">
<polygon fill="none" stroke="black" points="8084.01,-2374 7994.01,-2374 7994.01,-2343 8084.01,-2343 8084.01,-2374"/>
<text text-anchor="middle" x="8039.01" y="-2354.8" font-family="Courier,monospace" font-size="14.00">semigroup</text>
</a>
</g>
</g>
<!-- monoid&#45;&gt;semigroup -->
<g id="edge249" class="edge">
<title>monoid&#45;&gt;semigroup</title>
<g id="a_edge249"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/monoid.to_semigroup" xlink:title="monoid.to_semigroup">
<path fill="none" stroke="black" d="M8988.81,-2452C8974.21,-2449.5 8956.81,-2446.6 8941.01,-2444.5 8775.31,-2422.7 8262.91,-2378.2 8093.81,-2363.7"/>
<polygon fill="black" stroke="black" points="8093.88,-2360.19 8083.61,-2362.8 8093.27,-2367.17 8093.88,-2360.19"/>
</a>
</g>
</g>
<!-- semigroup_with_zero&#45;&gt;semigroup -->
<g id="edge250" class="edge">
<title>semigroup_with_zero&#45;&gt;semigroup</title>
<g id="a_edge250"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semigroup_with_zero.to_semigroup" xlink:title="semigroup_with_zero.to_semigroup">
<path fill="none" stroke="black" d="M8487.01,-2549.6C8375.71,-2536.2 8188.91,-2509.2 8130.01,-2473.5 8093.11,-2451.1 8065.01,-2407.9 8050.41,-2381.5"/>
<polygon fill="black" stroke="black" points="8053.41,-2379.68 8045.61,-2372.5 8047.23,-2382.97 8053.41,-2379.68"/>
</a>
</g>
</g>
<!-- mul_zero_class -->
<g id="node123" class="node">
<title>mul_zero_class</title>
<g id="a_node123"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_zero_class" xlink:title="mul_zero_class">
<polygon fill="none" stroke="black" points="9202.01,-2475 9070.01,-2475 9070.01,-2444 9202.01,-2444 9202.01,-2475"/>
<text text-anchor="middle" x="9136.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">mul_zero_class</text>
</a>
</g>
</g>
<!-- semigroup_with_zero&#45;&gt;mul_zero_class -->
<g id="edge251" class="edge">
<title>semigroup_with_zero&#45;&gt;mul_zero_class</title>
<g id="a_edge251"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semigroup_with_zero.to_mul_zero_class" xlink:title="semigroup_with_zero.to_mul_zero_class">
<path fill="none" stroke="black" d="M8651.41,-2545.5C8745.91,-2529.1 8909.91,-2500.6 9060.71,-2473.7"/>
<polygon fill="black" stroke="black" points="9061.35,-2477.14 9070.61,-2472 9060.17,-2470.24 9061.35,-2477.14"/>
</a>
</g>
</g>
<!-- mul_zero_one_class&#45;&gt;mul_one_class -->
<g id="edge252" class="edge">
<title>mul_zero_one_class&#45;&gt;mul_one_class</title>
<g id="a_edge252"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_zero_one_class.to_mul_one_class" xlink:title="mul_zero_one_class.to_mul_one_class">
<path fill="none" stroke="black" d="M9149.51,-2545.3C9169.11,-2530.2 9197.91,-2504.1 9210.01,-2473.5 9221.81,-2443.5 9213.61,-2405.9 9205.91,-2382.2"/>
<polygon fill="black" stroke="black" points="9209.17,-2380.92 9202.61,-2372.6 9202.55,-2383.19 9209.17,-2380.92"/>
</a>
</g>
</g>
<!-- mul_zero_one_class&#45;&gt;mul_zero_class -->
<g id="edge253" class="edge">
<title>mul_zero_one_class&#45;&gt;mul_zero_class</title>
<g id="a_edge253"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_zero_one_class.to_mul_zero_class" xlink:title="mul_zero_one_class.to_mul_zero_class">
<path fill="none" stroke="black" d="M9130.81,-2545.2C9131.81,-2529.3 9133.41,-2503 9134.61,-2483.7"/>
<polygon fill="black" stroke="black" points="9138.11,-2483.79 9135.21,-2473.6 9131.13,-2483.37 9138.11,-2483.79"/>
</a>
</g>
</g>
<!-- comm_semigroup&#45;&gt;semigroup -->
<g id="edge254" class="edge">
<title>comm_semigroup&#45;&gt;semigroup</title>
<g id="a_edge254"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_semigroup.to_semigroup" xlink:title="comm_semigroup.to_semigroup">
<path fill="none" stroke="black" d="M7409.51,-2545.3C7423.91,-2520.5 7457.81,-2468.7 7502.01,-2444.5 7690.41,-2341.3 7768.91,-2412.5 7980.01,-2372.5 7981.51,-2372.2 7982.91,-2371.9 7984.41,-2371.6"/>
<polygon fill="black" stroke="black" points="7985.21,-2375.01 7994.31,-2369.6 7983.82,-2368.15 7985.21,-2375.01"/>
</a>
</g>
</g>
<!-- has_mul -->
<g id="node350" class="node">
<title>has_mul</title>
<g id="a_node350"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_mul" xlink:title="has_mul">
<polygon fill="none" stroke="black" points="8118.51,-2272 8045.51,-2272 8045.51,-2241 8118.51,-2241 8118.51,-2272"/>
<text text-anchor="middle" x="8082.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">has_mul</text>
</a>
</g>
</g>
<!-- mul_one_class&#45;&gt;has_mul -->
<g id="edge895" class="edge">
<title>mul_one_class&#45;&gt;has_mul</title>
<g id="a_edge895"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_one_class.to_has_mul" xlink:title="mul_one_class.to_has_mul">
<path fill="none" stroke="black" d="M9135.81,-2348.3C9122.41,-2346.6 9108.21,-2344.9 9095.01,-2343.5 8669.21,-2299.5 8553.01,-2349.2 8128.31,-2271.5"/>
<polygon fill="black" stroke="black" points="8128.69,-2268.01 8118.21,-2269.6 8127.39,-2274.89 8128.69,-2268.01"/>
</a>
</g>
</g>
<!-- has_one -->
<g id="node468" class="node">
<title>has_one</title>
<g id="a_node468"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_one" xlink:title="has_one">
<polygon fill="none" stroke="black" points="9749.51,-2272 9676.51,-2272 9676.51,-2241 9749.51,-2241 9749.51,-2272"/>
<text text-anchor="middle" x="9713.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">has_one</text>
</a>
</g>
</g>
<!-- mul_one_class&#45;&gt;has_one -->
<g id="edge896" class="edge">
<title>mul_one_class&#45;&gt;has_one</title>
<g id="a_edge896"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_one_class.to_has_one" xlink:title="mul_one_class.to_has_one">
<path fill="none" stroke="black" d="M9258.31,-2348C9348.41,-2334.2 9521.71,-2305.9 9667.01,-2271.5 9667.11,-2271.5 9667.21,-2271.5 9667.31,-2271.4"/>
<polygon fill="black" stroke="black" points="9668.06,-2274.82 9676.91,-2269 9666.36,-2268.03 9668.06,-2274.82"/>
</a>
</g>
</g>
<!-- semigroup&#45;&gt;has_mul -->
<g id="edge897" class="edge">
<title>semigroup&#45;&gt;has_mul</title>
<g id="a_edge897"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semigroup.to_has_mul" xlink:title="semigroup.to_has_mul">
<path fill="none" stroke="black" d="M8045.01,-2343.2C8052.01,-2327.1 8063.71,-2300.2 8072.01,-2280.9"/>
<polygon fill="black" stroke="black" points="8075.28,-2282.16 8076.11,-2271.6 8068.88,-2279.34 8075.28,-2282.16"/>
</a>
</g>
</g>
<!-- has_dvd -->
<g id="node469" class="node">
<title>has_dvd</title>
<g id="a_node469"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_dvd" xlink:title="has_dvd">
<polygon fill="none" stroke="black" points="8028.51,-2272 7955.51,-2272 7955.51,-2241 8028.51,-2241 8028.51,-2272"/>
<text text-anchor="middle" x="7992.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">has_dvd</text>
</a>
</g>
</g>
<!-- semigroup&#45;&gt;has_dvd -->
<g id="edge898" class="edge">
<title>semigroup&#45;&gt;has_dvd</title>
<g id="a_edge898"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semigroup_has_dvd" xlink:title="semigroup_has_dvd">
<path fill="none" stroke="black" d="M8032.51,-2343.2C8024.81,-2327.1 8012.01,-2300.2 8002.91,-2280.9"/>
<polygon fill="black" stroke="black" points="8005.95,-2279.14 7998.51,-2271.6 7999.63,-2282.14 8005.95,-2279.14"/>
</a>
</g>
</g>
<!-- mul_zero_class&#45;&gt;has_mul -->
<g id="edge939" class="edge">
<title>mul_zero_class&#45;&gt;has_mul</title>
<g id="a_edge939"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_zero_class.to_has_mul" xlink:title="mul_zero_class.to_has_mul">
<path fill="none" stroke="black" d="M9070.61,-2446C9067.71,-2445.5 9064.81,-2445 9062.01,-2444.5 8866.71,-2410.7 8813.31,-2424.1 8622.01,-2372.5 8587.11,-2363.1 8580.91,-2353.1 8546.01,-2343.5 8366.91,-2294.4 8312.81,-2314 8128.01,-2271.6"/>
<polygon fill="black" stroke="black" points="8128.75,-2268.18 8118.21,-2269.3 8127.15,-2274.99 8128.75,-2268.18"/>
</a>
</g>
</g>
<!-- has_zero -->
<g id="node445" class="node">
<title>has_zero</title>
<g id="a_node445"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_zero" xlink:title="has_zero">
<polygon fill="none" stroke="black" points="10456.51,-1970 10375.51,-1970 10375.51,-1939 10456.51,-1939 10456.51,-1970"/>
<text text-anchor="middle" x="10416.01" y="-1950.8" font-family="Courier,monospace" font-size="14.00">has_zero</text>
</a>
</g>
</g>
<!-- mul_zero_class&#45;&gt;has_zero -->
<g id="edge938" class="edge">
<title>mul_zero_class&#45;&gt;has_zero</title>
<g id="a_edge938"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/mul_zero_class.to_has_zero" xlink:title="mul_zero_class.to_has_zero">
<path fill="none" stroke="black" d="M9201.21,-2445.2C9202.81,-2445 9204.41,-2444.7 9206.01,-2444.5 9662.51,-2376.5 9818.81,-2481.2 10230.01,-2271.5 10246.01,-2263.2 10351.01,-2185.9 10361.01,-2170.5 10401.01,-2109.4 10412.01,-2020.6 10415.01,-1978.7"/>
<polygon fill="black" stroke="black" points="10418.51,-1978.9 10416.01,-1968.6 10411.55,-1978.21 10418.51,-1978.9"/>
</a>
</g>
</g>
<!-- linear_ordered_comm_monoid_with_zero -->
<g id="node124" class="node">
<title>linear_ordered_comm_monoid_with_zero</title>
<g id="a_node124"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_comm_monoid_with_zero" xlink:title="linear_ordered_comm_monoid_with_zero">
<polygon fill="none" stroke="black" points="10205.01,-2979 9889.01,-2979 9889.01,-2948 10205.01,-2948 10205.01,-2979"/>
<text text-anchor="middle" x="10047.01" y="-2959.8" font-family="Courier,monospace" font-size="14.00">linear_ordered_comm_monoid_with_zero</text>
</a>
</g>
</g>
<!-- linear_ordered_comm_monoid_with_zero&#45;&gt;comm_monoid_with_zero -->
<g id="edge255" class="edge">
<title>linear_ordered_comm_monoid_with_zero&#45;&gt;comm_monoid_with_zero</title>
<g id="a_edge255"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_comm_monoid_with_zero.to_comm_monoid_with_zero" xlink:title="linear_ordered_comm_monoid_with_zero.to_comm_monoid_with_zero">
<path fill="none" stroke="black" d="M9890.81,-2953C9650.11,-2936.8 9208.91,-2904.1 9141.01,-2877.5 9121.21,-2869.8 9121.81,-2858.4 9103.01,-2848.5 9042.71,-2816.6 8968.21,-2793.3 8915.11,-2779.2"/>
<polygon fill="black" stroke="black" points="8915.68,-2775.73 8905.11,-2776.5 8913.86,-2782.49 8915.68,-2775.73"/>
</a>
</g>
</g>
<!-- linear_ordered_comm_monoid -->
<g id="node125" class="node">
<title>linear_ordered_comm_monoid</title>
<g id="a_node125"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_comm_monoid" xlink:title="linear_ordered_comm_monoid">
<polygon fill="none" stroke="black" points="11111.01,-2878 10879.01,-2878 10879.01,-2847 11111.01,-2847 11111.01,-2878"/>
<text text-anchor="middle" x="10995.01" y="-2858.8" font-family="Courier,monospace" font-size="14.00">linear_ordered_comm_monoid</text>
</a>
</g>
</g>
<!-- linear_ordered_comm_monoid_with_zero&#45;&gt;linear_ordered_comm_monoid -->
<g id="edge256" class="edge">
<title>linear_ordered_comm_monoid_with_zero&#45;&gt;linear_ordered_comm_monoid</title>
<g id="a_edge256"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_comm_monoid_with_zero.to_linear_ordered_comm_monoid" xlink:title="linear_ordered_comm_monoid_with_zero.to_linear_ordered_comm_monoid">
<path fill="none" stroke="black" d="M10179.01,-2949.5C10340.01,-2933 10619.01,-2904.2 10870.01,-2877.6"/>
<polygon fill="black" stroke="black" points="10870.46,-2881.07 10880.01,-2876.5 10869.69,-2874.11 10870.46,-2881.07"/>
</a>
</g>
</g>
<!-- linear_order -->
<g id="node126" class="node">
<title>linear_order</title>
<g id="a_node126"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_order" xlink:title="linear_order">
<polygon fill="none" stroke="black" points="11632.51,-2677 11517.51,-2677 11517.51,-2646 11632.51,-2646 11632.51,-2677"/>
<text text-anchor="middle" x="11575.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">linear_order</text>
</a>
</g>
</g>
<!-- linear_ordered_comm_monoid&#45;&gt;linear_order -->
<g id="edge257" class="edge">
<title>linear_ordered_comm_monoid&#45;&gt;linear_order</title>
<g id="a_edge257"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_comm_monoid.to_linear_order" xlink:title="linear_ordered_comm_monoid.to_linear_order">
<path fill="none" stroke="black" d="M11108.01,-2848.5C11189.01,-2836.2 11301.01,-2814.1 11393.01,-2776.5 11453.01,-2752 11516.01,-2707.7 11550.01,-2682"/>
<polygon fill="black" stroke="black" points="11552.39,-2684.58 11558.01,-2675.6 11548.02,-2679.11 11552.39,-2684.58"/>
</a>
</g>
</g>
<!-- ordered_comm_monoid -->
<g id="node127" class="node">
<title>ordered_comm_monoid</title>
<g id="a_node127"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_comm_monoid" xlink:title="ordered_comm_monoid">
<polygon fill="none" stroke="black" points="10729.01,-2778 10555.01,-2778 10555.01,-2747 10729.01,-2747 10729.01,-2778"/>
<text text-anchor="middle" x="10642.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">ordered_comm_monoid</text>
</a>
</g>
</g>
<!-- linear_ordered_comm_monoid&#45;&gt;ordered_comm_monoid -->
<g id="edge258" class="edge">
<title>linear_ordered_comm_monoid&#45;&gt;ordered_comm_monoid</title>
<g id="a_edge258"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_comm_monoid.to_ordered_comm_monoid" xlink:title="linear_ordered_comm_monoid.to_ordered_comm_monoid">
<path fill="none" stroke="black" d="M10947.01,-2848.4C10882.01,-2830.4 10769.01,-2798.6 10700.01,-2779.3"/>
<polygon fill="black" stroke="black" points="10700.58,-2775.83 10690.01,-2776.6 10698.76,-2782.59 10700.58,-2775.83"/>
</a>
</g>
</g>
<!-- partial_order -->
<g id="node128" class="node">
<title>partial_order</title>
<g id="a_node128"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/partial_order" xlink:title="partial_order">
<polygon fill="none" stroke="black" points="13889.51,-2272 13766.51,-2272 13766.51,-2241 13889.51,-2241 13889.51,-2272"/>
<text text-anchor="middle" x="13828.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">partial_order</text>
</a>
</g>
</g>
<!-- linear_order&#45;&gt;partial_order -->
<g id="edge259" class="edge">
<title>linear_order&#45;&gt;partial_order</title>
<g id="a_edge259"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_order.to_partial_order" xlink:title="linear_order.to_partial_order">
<path fill="none" stroke="black" d="M11632.01,-2653.9C11658.01,-2651.3 11689.01,-2648.4 11717.01,-2646.5 11908.01,-2633.4 13257.01,-2642 13436.01,-2574.5 13453.01,-2568.2 13548.01,-2486 13561.01,-2473.5 13615.01,-2420.5 13613.01,-2391.4 13672.01,-2343.5 13707.01,-2314.9 13753.01,-2291.1 13786.01,-2275.9"/>
<polygon fill="black" stroke="black" points="13787.5,-2279.07 13795.01,-2271.6 13784.48,-2272.75 13787.5,-2279.07"/>
</a>
</g>
</g>
<!-- distrib_lattice -->
<g id="node129" class="node">
<title>distrib_lattice</title>
<g id="a_node129"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/distrib_lattice" xlink:title="distrib_lattice">
<polygon fill="none" stroke="black" points="11655.01,-2576 11515.01,-2576 11515.01,-2545 11655.01,-2545 11655.01,-2576"/>
<text text-anchor="middle" x="11585.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">distrib_lattice</text>
</a>
</g>
</g>
<!-- linear_order&#45;&gt;distrib_lattice -->
<g id="edge260" class="edge">
<title>linear_order&#45;&gt;distrib_lattice</title>
<g id="a_edge260"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_order.to_distrib_lattice" xlink:title="linear_order.to_distrib_lattice">
<path fill="none" stroke="black" d="M11576.01,-2646.2C11578.01,-2630.3 11581.01,-2604 11583.01,-2584.7"/>
<polygon fill="black" stroke="black" points="11586.51,-2584.9 11584.01,-2574.6 11579.55,-2584.21 11586.51,-2584.9"/>
</a>
</g>
</g>
<!-- lattice -->
<g id="node130" class="node">
<title>lattice</title>
<g id="a_node130"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice" xlink:title="lattice">
<polygon fill="none" stroke="black" points="11160.51,-2475 11087.51,-2475 11087.51,-2444 11160.51,-2444 11160.51,-2475"/>
<text text-anchor="middle" x="11124.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">lattice</text>
</a>
</g>
</g>
<!-- linear_order&#45;&gt;lattice -->
<g id="edge261" class="edge">
<title>linear_order&#45;&gt;lattice</title>
<g id="a_edge261"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_order.to_lattice" xlink:title="linear_order.to_lattice">
<path fill="none" stroke="black" d="M11544.01,-2646.4C11465.01,-2611.2 11253.01,-2517.1 11164.01,-2477.7"/>
<polygon fill="black" stroke="black" points="11165.57,-2474.56 11155.01,-2473.6 11162.66,-2480.93 11165.57,-2474.56"/>
</a>
</g>
</g>
<!-- ordered_comm_monoid&#45;&gt;comm_monoid -->
<g id="edge262" class="edge">
<title>ordered_comm_monoid&#45;&gt;comm_monoid</title>
<g id="a_edge262"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_comm_monoid.to_comm_monoid" xlink:title="ordered_comm_monoid.to_comm_monoid">
<path fill="none" stroke="black" d="M10556.01,-2748.4C10553.01,-2748.1 10550.01,-2747.8 10547.01,-2747.5 9698.21,-2671.5 9480.01,-2748.6 8631.01,-2675.5 8618.91,-2674.5 8606.11,-2673 8593.81,-2671.4"/>
<polygon fill="black" stroke="black" points="8593.98,-2667.89 8583.61,-2670.1 8593.09,-2674.84 8593.98,-2667.89"/>
</a>
</g>
</g>
<!-- ordered_comm_monoid&#45;&gt;partial_order -->
<g id="edge263" class="edge">
<title>ordered_comm_monoid&#45;&gt;partial_order</title>
<g id="a_edge263"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_comm_monoid.to_partial_order" xlink:title="ordered_comm_monoid.to_partial_order">
<path fill="none" stroke="black" d="M10728.01,-2751.3C10743.01,-2749.8 10760.01,-2748.5 10775.01,-2747.5 10927.01,-2737.8 13385.01,-2764 13508.01,-2675.5 13558.01,-2639.6 13520.01,-2595.5 13556.01,-2545.5 13586.01,-2504 13610.01,-2509.9 13646.01,-2473.5 13698.01,-2421.3 13700.01,-2399.3 13748.01,-2343.5 13768.01,-2320.7 13791.01,-2295.8 13808.01,-2278.8"/>
<polygon fill="black" stroke="black" points="13810.55,-2281.21 13815.01,-2271.6 13805.53,-2276.33 13810.55,-2281.21"/>
</a>
</g>
</g>
<!-- preorder -->
<g id="node291" class="node">
<title>preorder</title>
<g id="a_node291"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/preorder" xlink:title="preorder">
<polygon fill="none" stroke="black" points="13791.51,-2171 13710.51,-2171 13710.51,-2140 13791.51,-2140 13791.51,-2171"/>
<text text-anchor="middle" x="13751.01" y="-2151.8" font-family="Courier,monospace" font-size="14.00">preorder</text>
</a>
</g>
</g>
<!-- partial_order&#45;&gt;preorder -->
<g id="edge746" class="edge">
<title>partial_order&#45;&gt;preorder</title>
<g id="a_edge746"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/partial_order.to_preorder" xlink:title="partial_order.to_preorder">
<path fill="none" stroke="black" d="M13817.01,-2242.2C13804.01,-2225.8 13783.01,-2198 13768.01,-2178.6"/>
<polygon fill="black" stroke="black" points="13770.81,-2176.5 13762.01,-2170.6 13765.21,-2180.7 13770.81,-2176.5"/>
</a>
</g>
</g>
<!-- distrib_lattice&#45;&gt;lattice -->
<g id="edge747" class="edge">
<title>distrib_lattice&#45;&gt;lattice</title>
<g id="a_edge747"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/distrib_lattice.to_lattice" xlink:title="distrib_lattice.to_lattice">
<path fill="none" stroke="black" d="M11516.01,-2546.7C11435.01,-2531.9 11297.01,-2505.4 11170.01,-2473.7"/>
<polygon fill="black" stroke="black" points="11170.56,-2470.23 11160.01,-2471.2 11168.87,-2477.02 11170.56,-2470.23"/>
</a>
</g>
</g>
<!-- lattice_ordered_comm_group.has_zero_lattice_has_neg_part -->
<g id="node337" class="node">
<title>lattice_ordered_comm_group.has_zero_lattice_has_neg_part</title>
<g id="a_node337"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_zero_lattice_has_neg_part" xlink:title="lattice_ordered_comm_group.has_zero_lattice_has_neg_part">
<ellipse fill="black" stroke="black" cx="10584.01" cy="-2358.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- lattice&#45;&gt;lattice_ordered_comm_group.has_zero_lattice_has_neg_part -->
<g id="edge750" class="edge">
<title>lattice&#45;&gt;lattice_ordered_comm_group.has_zero_lattice_has_neg_part</title>
<g id="a_edge750"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_zero_lattice_has_neg_part" xlink:title="lattice_ordered_comm_group.has_zero_lattice_has_neg_part">
<path fill="none" stroke="black" d="M11088.01,-2455.9C10982.01,-2449.3 10676.01,-2425.7 10593.01,-2372.5 10591.01,-2371.4 10590.01,-2369.9 10589.01,-2368.2"/>
<polygon fill="black" stroke="black" points="10591.9,-2366.18 10584.01,-2359.1 10585.76,-2369.55 10591.9,-2366.18"/>
</a>
</g>
</g>
<!-- lattice_ordered_comm_group.has_zero_lattice_has_pos_part -->
<g id="node338" class="node">
<title>lattice_ordered_comm_group.has_zero_lattice_has_pos_part</title>
<g id="a_node338"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_zero_lattice_has_pos_part" xlink:title="lattice_ordered_comm_group.has_zero_lattice_has_pos_part">
<ellipse fill="black" stroke="black" cx="10716.01" cy="-2358.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- lattice&#45;&gt;lattice_ordered_comm_group.has_zero_lattice_has_pos_part -->
<g id="edge751" class="edge">
<title>lattice&#45;&gt;lattice_ordered_comm_group.has_zero_lattice_has_pos_part</title>
<g id="a_edge751"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_zero_lattice_has_pos_part" xlink:title="lattice_ordered_comm_group.has_zero_lattice_has_pos_part">
<path fill="none" stroke="black" d="M11088.01,-2459C11013.01,-2459.2 10840.01,-2450.7 10725.01,-2372.5 10723.01,-2371.4 10722.01,-2369.8 10721.01,-2368.2"/>
<polygon fill="black" stroke="black" points="10723.9,-2366.18 10716.01,-2359.1 10717.76,-2369.55 10723.9,-2366.18"/>
</a>
</g>
</g>
<!-- lattice_ordered_comm_group.has_one_lattice_has_pos_part -->
<g id="node399" class="node">
<title>lattice_ordered_comm_group.has_one_lattice_has_pos_part</title>
<g id="a_node399"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_one_lattice_has_pos_part" xlink:title="lattice_ordered_comm_group.has_one_lattice_has_pos_part">
<ellipse fill="black" stroke="black" cx="10734.01" cy="-2358.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- lattice&#45;&gt;lattice_ordered_comm_group.has_one_lattice_has_pos_part -->
<g id="edge748" class="edge">
<title>lattice&#45;&gt;lattice_ordered_comm_group.has_one_lattice_has_pos_part</title>
<g id="a_edge748"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_one_lattice_has_pos_part" xlink:title="lattice_ordered_comm_group.has_one_lattice_has_pos_part">
<path fill="none" stroke="black" d="M11088.01,-2448.8C11002.01,-2427.1 10792.01,-2373.6 10744.01,-2361.5"/>
<polygon fill="black" stroke="black" points="10744.56,-2358.03 10734.01,-2359 10742.87,-2364.82 10744.56,-2358.03"/>
</a>
</g>
</g>
<!-- lattice_ordered_comm_group.has_one_lattice_has_neg_part -->
<g id="node400" class="node">
<title>lattice_ordered_comm_group.has_one_lattice_has_neg_part</title>
<g id="a_node400"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_one_lattice_has_neg_part" xlink:title="lattice_ordered_comm_group.has_one_lattice_has_neg_part">
<ellipse fill="black" stroke="black" cx="10602.01" cy="-2358.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- lattice&#45;&gt;lattice_ordered_comm_group.has_one_lattice_has_neg_part -->
<g id="edge749" class="edge">
<title>lattice&#45;&gt;lattice_ordered_comm_group.has_one_lattice_has_neg_part</title>
<g id="a_edge749"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_one_lattice_has_neg_part" xlink:title="lattice_ordered_comm_group.has_one_lattice_has_neg_part">
<path fill="none" stroke="black" d="M11088.01,-2451.1C10981.01,-2430.9 10672.01,-2372.3 10612.01,-2360.9"/>
<polygon fill="black" stroke="black" points="10612.49,-2357.43 10602.01,-2359 10611.18,-2364.31 10612.49,-2357.43"/>
</a>
</g>
</g>
<!-- semilattice_inf -->
<g id="node401" class="node">
<title>semilattice_inf</title>
<g id="a_node401"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semilattice_inf" xlink:title="semilattice_inf">
<polygon fill="none" stroke="black" points="13393.01,-2374 13253.01,-2374 13253.01,-2343 13393.01,-2343 13393.01,-2374"/>
<text text-anchor="middle" x="13323.01" y="-2354.8" font-family="Courier,monospace" font-size="14.00">semilattice_inf</text>
</a>
</g>
</g>
<!-- lattice&#45;&gt;semilattice_inf -->
<g id="edge752" class="edge">
<title>lattice&#45;&gt;semilattice_inf</title>
<g id="a_edge752"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice.to_semilattice_inf" xlink:title="lattice.to_semilattice_inf">
<path fill="none" stroke="black" d="M11160.01,-2446.3C11163.01,-2445.6 11166.01,-2445 11169.01,-2444.5 12063.01,-2297.1 12303.01,-2440.9 13207.01,-2372.5 13219.01,-2371.6 13231.01,-2370.4 13244.01,-2369.1"/>
<polygon fill="black" stroke="black" points="13244.46,-2372.57 13254.01,-2368 13243.69,-2365.61 13244.46,-2372.57"/>
</a>
</g>
</g>
<!-- semilattice_sup -->
<g id="node402" class="node">
<title>semilattice_sup</title>
<g id="a_node402"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semilattice_sup" xlink:title="semilattice_sup">
<polygon fill="none" stroke="black" points="11698.01,-2374 11558.01,-2374 11558.01,-2343 11698.01,-2343 11698.01,-2374"/>
<text text-anchor="middle" x="11628.01" y="-2354.8" font-family="Courier,monospace" font-size="14.00">semilattice_sup</text>
</a>
</g>
</g>
<!-- lattice&#45;&gt;semilattice_sup -->
<g id="edge753" class="edge">
<title>lattice&#45;&gt;semilattice_sup</title>
<g id="a_edge753"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice.to_semilattice_sup" xlink:title="lattice.to_semilattice_sup">
<path fill="none" stroke="black" d="M11160.01,-2446.8C11163.01,-2446 11166.01,-2445.2 11169.01,-2444.5 11240.01,-2427.3 11437.01,-2392.2 11549.01,-2372.7"/>
<polygon fill="black" stroke="black" points="11549.79,-2376.12 11559.01,-2370.9 11548.55,-2369.23 11549.79,-2376.12"/>
</a>
</g>
</g>
<!-- has_norm -->
<g id="node131" class="node">
<title>has_norm</title>
<g id="a_node131"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_norm" xlink:title="has_norm">
<polygon fill="none" stroke="black" points="6965.51,-2677 6884.51,-2677 6884.51,-2646 6965.51,-2646 6965.51,-2677"/>
<text text-anchor="middle" x="6925.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">has_norm</text>
</a>
</g>
</g>
<!-- normed_linear_ordered_field -->
<g id="node132" class="node">
<title>normed_linear_ordered_field</title>
<g id="a_node132"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_linear_ordered_field" xlink:title="normed_linear_ordered_field">
<polygon fill="none" stroke="black" points="7330.51,-3384 7089.51,-3384 7089.51,-3353 7330.51,-3353 7330.51,-3384"/>
<text text-anchor="middle" x="7210.01" y="-3364.8" font-family="Courier,monospace" font-size="14.00">normed_linear_ordered_field</text>
</a>
</g>
</g>
<!-- normed_linear_ordered_field&#45;&gt;has_norm -->
<g id="edge264" class="edge">
<title>normed_linear_ordered_field&#45;&gt;has_norm</title>
<g id="a_edge264"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_linear_ordered_field.to_has_norm" xlink:title="normed_linear_ordered_field.to_has_norm">
<path fill="none" stroke="black" d="M7241.11,-3353.4C7297.11,-3326.5 7409.01,-3261 7409.01,-3167 7409.01,-3167 7409.01,-3167 7409.01,-2963 7409.01,-2841.6 7347.51,-2805.9 7241.01,-2747.5 7195.31,-2722.4 7052.71,-2689.4 6975.71,-2672.7"/>
<polygon fill="black" stroke="black" points="6976.23,-2669.23 6965.71,-2670.5 6974.73,-2676.07 6976.23,-2669.23"/>
</a>
</g>
</g>
<!-- normed_field -->
<g id="node133" class="node">
<title>normed_field</title>
<g id="a_node133"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_field" xlink:title="normed_field">
<polygon fill="none" stroke="black" points="7024.51,-3283 6909.51,-3283 6909.51,-3252 7024.51,-3252 7024.51,-3283"/>
<text text-anchor="middle" x="6967.01" y="-3263.8" font-family="Courier,monospace" font-size="14.00">normed_field</text>
</a>
</g>
</g>
<!-- normed_linear_ordered_field&#45;&gt;normed_field -->
<g id="edge265" class="edge">
<title>normed_linear_ordered_field&#45;&gt;normed_field</title>
<g id="a_edge265"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_linear_ordered_field.to_normed_field" xlink:title="normed_linear_ordered_field.to_normed_field">
<path fill="none" stroke="black" d="M7176.71,-3353.4C7133.31,-3335.8 7057.31,-3304.8 7009.71,-3285.4"/>
<polygon fill="black" stroke="black" points="7010.9,-3282.1 7000.31,-3281.6 7008.27,-3288.59 7010.9,-3282.1"/>
</a>
</g>
</g>
<!-- metric_space -->
<g id="node134" class="node">
<title>metric_space</title>
<g id="a_node134"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/metric_space" xlink:title="metric_space">
<polygon fill="none" stroke="black" points="6506.51,-2778 6391.51,-2778 6391.51,-2747 6506.51,-2747 6506.51,-2778"/>
<text text-anchor="middle" x="6449.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">metric_space</text>
</a>
</g>
</g>
<!-- normed_linear_ordered_field&#45;&gt;metric_space -->
<g id="edge266" class="edge">
<title>normed_linear_ordered_field&#45;&gt;metric_space</title>
<g id="a_edge266"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_linear_ordered_field.to_metric_space" xlink:title="normed_linear_ordered_field.to_metric_space">
<path fill="none" stroke="black" d="M7091.51,-3353.6C6842.71,-3323.7 6289.01,-3248.2 6289.01,-3167 6289.01,-3167 6289.01,-3167 6289.01,-3064 6289.01,-2920.7 6486.21,-3004.8 6552.01,-2877.5 6572.11,-2838.5 6524.11,-2802.5 6487.11,-2781.6"/>
<polygon fill="black" stroke="black" points="6488.37,-2778.3 6477.91,-2776.6 6485.03,-2784.45 6488.37,-2778.3"/>
</a>
</g>
</g>
<!-- normed_linear_ordered_group -->
<g id="node135" class="node">
<title>normed_linear_ordered_group</title>
<g id="a_node135"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_linear_ordered_group" xlink:title="normed_linear_ordered_group">
<polygon fill="none" stroke="black" points="7176.51,-3081 6935.51,-3081 6935.51,-3050 7176.51,-3050 7176.51,-3081"/>
<text text-anchor="middle" x="7056.01" y="-3061.8" font-family="Courier,monospace" font-size="14.00">normed_linear_ordered_group</text>
</a>
</g>
</g>
<!-- normed_linear_ordered_field&#45;&gt;normed_linear_ordered_group -->
<g id="edge267" class="edge">
<title>normed_linear_ordered_field&#45;&gt;normed_linear_ordered_group</title>
<g id="a_edge267"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_linear_ordered_field.to_normed_linear_ordered_group" xlink:title="normed_linear_ordered_field.to_normed_linear_ordered_group">
<path fill="none" stroke="black" d="M7203.01,-3353.3C7178.71,-3305.8 7097.91,-3148 7067.61,-3088.7"/>
<polygon fill="black" stroke="black" points="7070.75,-3087.14 7063.11,-3079.8 7064.5,-3090.3 7070.75,-3087.14"/>
</a>
</g>
</g>
<!-- linear_ordered_field -->
<g id="node136" class="node">
<title>linear_ordered_field</title>
<g id="a_node136"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_field" xlink:title="linear_ordered_field">
<polygon fill="none" stroke="black" points="8424.01,-3283 8242.01,-3283 8242.01,-3252 8424.01,-3252 8424.01,-3283"/>
<text text-anchor="middle" x="8333.01" y="-3263.8" font-family="Courier,monospace" font-size="14.00">linear_ordered_field</text>
</a>
</g>
</g>
<!-- normed_linear_ordered_field&#45;&gt;linear_ordered_field -->
<g id="edge268" class="edge">
<title>normed_linear_ordered_field&#45;&gt;linear_ordered_field</title>
<g id="a_edge268"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_linear_ordered_field.to_linear_ordered_field" xlink:title="normed_linear_ordered_field.to_linear_ordered_field">
<path fill="none" stroke="black" d="M7328.61,-3356.5C7550.61,-3337 8025.41,-3295.1 8232.71,-3276.8"/>
<polygon fill="black" stroke="black" points="8233.36,-3280.26 8243.01,-3275.9 8232.75,-3273.28 8233.36,-3280.26"/>
</a>
</g>
</g>
<!-- normed_field&#45;&gt;has_norm -->
<g id="edge269" class="edge">
<title>normed_field&#45;&gt;has_norm</title>
<g id="a_edge269"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_field.to_has_norm" xlink:title="normed_field.to_has_norm">
<path fill="none" stroke="black" d="M6909.91,-3260.2C6808.81,-3246.5 6609.01,-3202.2 6609.01,-3066 6609.01,-3066 6609.01,-3066 6609.01,-2862 6609.01,-2737.9 6785.11,-2687.6 6874.41,-2670.1"/>
<polygon fill="black" stroke="black" points="6875.15,-2673.52 6884.31,-2668.2 6873.83,-2666.65 6875.15,-2673.52"/>
</a>
</g>
</g>
<!-- normed_field&#45;&gt;metric_space -->
<g id="edge270" class="edge">
<title>normed_field&#45;&gt;metric_space</title>
<g id="a_edge270"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_field.to_metric_space" xlink:title="normed_field.to_metric_space">
<path fill="none" stroke="black" d="M6909.91,-3261.5C6834.21,-3253.8 6698.31,-3233.1 6595.01,-3180.5 6473.21,-3118.4 6447.41,-3086.1 6363.01,-2978.5 6324.61,-2929.5 6280.71,-2902.9 6311.01,-2848.5 6329.31,-2815.7 6365.91,-2793.9 6396.81,-2780.5"/>
<polygon fill="black" stroke="black" points="6398.32,-2783.67 6406.21,-2776.6 6395.64,-2777.2 6398.32,-2783.67"/>
</a>
</g>
</g>
<!-- normed_division_ring -->
<g id="node137" class="node">
<title>normed_division_ring</title>
<g id="a_node137"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_division_ring" xlink:title="normed_division_ring">
<polygon fill="none" stroke="black" points="6911.01,-3182 6729.01,-3182 6729.01,-3151 6911.01,-3151 6911.01,-3182"/>
<text text-anchor="middle" x="6820.01" y="-3162.8" font-family="Courier,monospace" font-size="14.00">normed_division_ring</text>
</a>
</g>
</g>
<!-- normed_field&#45;&gt;normed_division_ring -->
<g id="edge271" class="edge">
<title>normed_field&#45;&gt;normed_division_ring</title>
<g id="a_edge271"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_field.to_normed_division_ring" xlink:title="normed_field.to_normed_division_ring">
<path fill="none" stroke="black" d="M6946.91,-3252.4C6921.51,-3235.4 6877.71,-3205.9 6848.81,-3186.4"/>
<polygon fill="black" stroke="black" points="6850.65,-3183.42 6840.41,-3180.7 6846.72,-3189.21 6850.65,-3183.42"/>
</a>
</g>
</g>
<!-- field -->
<g id="node138" class="node">
<title>field</title>
<g id="a_node138"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/field" xlink:title="field">
<polygon fill="none" stroke="black" points="8270.01,-3182 8214.01,-3182 8214.01,-3151 8270.01,-3151 8270.01,-3182"/>
<text text-anchor="middle" x="8242.01" y="-3162.8" font-family="Courier,monospace" font-size="14.00">field</text>
</a>
</g>
</g>
<!-- normed_field&#45;&gt;field -->
<g id="edge272" class="edge">
<title>normed_field&#45;&gt;field</title>
<g id="a_edge272"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_field.to_field" xlink:title="normed_field.to_field">
<path fill="none" stroke="black" d="M7024.31,-3261.6C7242.81,-3244.6 8021.21,-3184.1 8203.61,-3170"/>
<polygon fill="black" stroke="black" points="8204.12,-3173.47 8213.81,-3169.2 8203.57,-3166.49 8204.12,-3173.47"/>
</a>
</g>
</g>
<!-- normed_comm_ring -->
<g id="node139" class="node">
<title>normed_comm_ring</title>
<g id="a_node139"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_comm_ring" xlink:title="normed_comm_ring">
<polygon fill="none" stroke="black" points="7076.01,-3182 6928.01,-3182 6928.01,-3151 7076.01,-3151 7076.01,-3182"/>
<text text-anchor="middle" x="7002.01" y="-3162.8" font-family="Courier,monospace" font-size="14.00">normed_comm_ring</text>
</a>
</g>
</g>
<!-- normed_field&#45;&gt;normed_comm_ring -->
<g id="edge273" class="edge">
<title>normed_field&#45;&gt;normed_comm_ring</title>
<g id="a_edge273"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_field.to_normed_comm_ring" xlink:title="normed_field.to_normed_comm_ring">
<path fill="none" stroke="black" d="M6971.91,-3252.2C6977.51,-3236.2 6987.01,-3209.5 6993.81,-3190.2"/>
<polygon fill="black" stroke="black" points="6997.17,-3191.19 6997.21,-3180.6 6990.58,-3188.86 6997.17,-3191.19"/>
</a>
</g>
</g>
<!-- pseudo_metric_space -->
<g id="node140" class="node">
<title>pseudo_metric_space</title>
<g id="a_node140"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/pseudo_metric_space" xlink:title="pseudo_metric_space">
<polygon fill="none" stroke="black" points="6769.01,-2677 6595.01,-2677 6595.01,-2646 6769.01,-2646 6769.01,-2677"/>
<text text-anchor="middle" x="6682.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">pseudo_metric_space</text>
</a>
</g>
</g>
<!-- metric_space&#45;&gt;pseudo_metric_space -->
<g id="edge274" class="edge">
<title>metric_space&#45;&gt;pseudo_metric_space</title>
<g id="a_edge274"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/metric_space.to_pseudo_metric_space" xlink:title="metric_space.to_pseudo_metric_space">
<path fill="none" stroke="black" d="M6480.91,-2747.4C6522.41,-2729.8 6595.11,-2698.9 6640.81,-2679.5"/>
<polygon fill="black" stroke="black" points="6642.25,-2682.7 6650.11,-2675.6 6639.54,-2676.24 6642.25,-2682.7"/>
</a>
</g>
</g>
<!-- emetric_space -->
<g id="node141" class="node">
<title>emetric_space</title>
<g id="a_node141"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/emetric_space" xlink:title="emetric_space">
<polygon fill="none" stroke="black" points="6510.51,-2677 6387.51,-2677 6387.51,-2646 6510.51,-2646 6510.51,-2677"/>
<text text-anchor="middle" x="6449.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">emetric_space</text>
</a>
</g>
</g>
<!-- metric_space&#45;&gt;emetric_space -->
<g id="edge275" class="edge">
<title>metric_space&#45;&gt;emetric_space</title>
<g id="a_edge275"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/metric.metric_space.to_emetric_space" xlink:title="metric.metric_space.to_emetric_space">
<path fill="none" stroke="black" d="M6449.01,-2747.2C6449.01,-2731.3 6449.01,-2705 6449.01,-2685.7"/>
<polygon fill="black" stroke="black" points="6452.51,-2685.6 6449.01,-2675.6 6445.51,-2685.6 6452.51,-2685.6"/>
</a>
</g>
</g>
<!-- normed_linear_ordered_group&#45;&gt;has_norm -->
<g id="edge276" class="edge">
<title>normed_linear_ordered_group&#45;&gt;has_norm</title>
<g id="a_edge276"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_linear_ordered_group.to_has_norm" xlink:title="normed_linear_ordered_group.to_has_norm">
<path fill="none" stroke="black" d="M7143.01,-3050.4C7220.41,-3036.4 7325.01,-3011.8 7350.01,-2978.5 7368.91,-2953.3 7368.11,-2911.3 7330.01,-2848.5 7311.41,-2817.8 7235.71,-2764.3 7204.01,-2747.5 7164.11,-2726.4 7044.51,-2693.2 6975.51,-2675"/>
<polygon fill="black" stroke="black" points="6976.37,-2671.61 6965.81,-2672.5 6974.62,-2678.39 6976.37,-2671.61"/>
</a>
</g>
</g>
<!-- normed_linear_ordered_group&#45;&gt;metric_space -->
<g id="edge277" class="edge">
<title>normed_linear_ordered_group&#45;&gt;metric_space</title>
<g id="a_edge277"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_linear_ordered_group.to_metric_space" xlink:title="normed_linear_ordered_group.to_metric_space">
<path fill="none" stroke="black" d="M6968.41,-3050.5C6903.31,-3038 6813.71,-3015.7 6742.01,-2978.5 6661.61,-2936.8 6658.41,-2901.6 6585.01,-2848.5 6550.91,-2823.8 6509.71,-2798.5 6481.71,-2781.9"/>
<polygon fill="black" stroke="black" points="6483.11,-2778.66 6472.71,-2776.6 6479.55,-2784.69 6483.11,-2778.66"/>
</a>
</g>
</g>
<!-- linear_ordered_add_comm_group -->
<g id="node142" class="node">
<title>linear_ordered_add_comm_group</title>
<g id="a_node142"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_add_comm_group" xlink:title="linear_ordered_add_comm_group">
<polygon fill="none" stroke="black" points="11083.01,-2979 10825.01,-2979 10825.01,-2948 11083.01,-2948 11083.01,-2979"/>
<text text-anchor="middle" x="10954.01" y="-2959.8" font-family="Courier,monospace" font-size="14.00">linear_ordered_add_comm_group</text>
</a>
</g>
</g>
<!-- normed_linear_ordered_group&#45;&gt;linear_ordered_add_comm_group -->
<g id="edge278" class="edge">
<title>normed_linear_ordered_group&#45;&gt;linear_ordered_add_comm_group</title>
<g id="a_edge278"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_linear_ordered_group.to_linear_ordered_add_comm_group" xlink:title="normed_linear_ordered_group.to_linear_ordered_add_comm_group">
<path fill="none" stroke="black" d="M7174.51,-3051.1C7177.71,-3050.9 7180.91,-3050.7 7184.01,-3050.5 8792.91,-2949.9 9203.71,-3073.8 10817.01,-2978.5"/>
<polygon fill="black" stroke="black" points="10817.24,-2981.99 10827.01,-2977.9 10816.82,-2975.01 10817.24,-2981.99"/>
</a>
</g>
</g>
<!-- normed_group -->
<g id="node143" class="node">
<title>normed_group</title>
<g id="a_node143"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_group" xlink:title="normed_group">
<polygon fill="none" stroke="black" points="7011.51,-2878 6896.51,-2878 6896.51,-2847 7011.51,-2847 7011.51,-2878"/>
<text text-anchor="middle" x="6954.01" y="-2858.8" font-family="Courier,monospace" font-size="14.00">normed_group</text>
</a>
</g>
</g>
<!-- normed_linear_ordered_group&#45;&gt;normed_group -->
<g id="edge279" class="edge">
<title>normed_linear_ordered_group&#45;&gt;normed_group</title>
<g id="a_edge279"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_linear_ordered_group.to_normed_group" xlink:title="normed_linear_ordered_group.to_normed_group">
<path fill="none" stroke="black" d="M7080.81,-3050.3C7115.31,-3029.5 7171.01,-2988 7146.01,-2949.5 7130.11,-2925 7058.91,-2897.7 7007.91,-2880.7"/>
<polygon fill="black" stroke="black" points="7008.91,-2877.34 6998.31,-2877.5 7006.69,-2883.98 7008.91,-2877.34"/>
</a>
</g>
</g>
<!-- linear_ordered_field&#45;&gt;field -->
<g id="edge280" class="edge">
<title>linear_ordered_field&#45;&gt;field</title>
<g id="a_edge280"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_field.to_field" xlink:title="linear_ordered_field.to_field">
<path fill="none" stroke="black" d="M8320.31,-3252.2C8305.11,-3235.6 8279.21,-3207.5 8261.41,-3188.1"/>
<polygon fill="black" stroke="black" points="8263.86,-3185.59 8254.51,-3180.6 8258.71,-3190.33 8263.86,-3185.59"/>
</a>
</g>
</g>
<!-- linear_ordered_semifield -->
<g id="node144" class="node">
<title>linear_ordered_semifield</title>
<g id="a_node144"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_semifield" xlink:title="linear_ordered_semifield">
<polygon fill="none" stroke="black" points="8812.01,-3182 8596.01,-3182 8596.01,-3151 8812.01,-3151 8812.01,-3182"/>
<text text-anchor="middle" x="8704.01" y="-3162.8" font-family="Courier,monospace" font-size="14.00">linear_ordered_semifield</text>
</a>
</g>
</g>
<!-- linear_ordered_field&#45;&gt;linear_ordered_semifield -->
<g id="edge281" class="edge">
<title>linear_ordered_field&#45;&gt;linear_ordered_semifield</title>
<g id="a_edge281"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_field.to_linear_ordered_semifield" xlink:title="linear_ordered_field.to_linear_ordered_semifield">
<path fill="none" stroke="black" d="M8383.81,-3252.4C8451.51,-3234.4 8571.01,-3202.5 8643.31,-3183.2"/>
<polygon fill="black" stroke="black" points="8644.43,-3186.53 8653.21,-3180.6 8642.65,-3179.75 8644.43,-3186.53"/>
</a>
</g>
</g>
<!-- linear_ordered_comm_ring -->
<g id="node145" class="node">
<title>linear_ordered_comm_ring</title>
<g id="a_node145"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_comm_ring" xlink:title="linear_ordered_comm_ring">
<polygon fill="none" stroke="black" points="8531.01,-3182 8315.01,-3182 8315.01,-3151 8531.01,-3151 8531.01,-3182"/>
<text text-anchor="middle" x="8423.01" y="-3162.8" font-family="Courier,monospace" font-size="14.00">linear_ordered_comm_ring</text>
</a>
</g>
</g>
<!-- linear_ordered_field&#45;&gt;linear_ordered_comm_ring -->
<g id="edge282" class="edge">
<title>linear_ordered_field&#45;&gt;linear_ordered_comm_ring</title>
<g id="a_edge282"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_field.to_linear_ordered_comm_ring" xlink:title="linear_ordered_field.to_linear_ordered_comm_ring">
<path fill="none" stroke="black" d="M8345.51,-3252.2C8360.61,-3235.6 8386.21,-3207.5 8403.81,-3188.1"/>
<polygon fill="black" stroke="black" points="8406.49,-3190.36 8410.61,-3180.6 8401.3,-3185.66 8406.49,-3190.36"/>
</a>
</g>
</g>
<!-- normed_division_ring&#45;&gt;has_norm -->
<g id="edge283" class="edge">
<title>normed_division_ring&#45;&gt;has_norm</title>
<g id="a_edge283"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_division_ring.to_has_norm" xlink:title="normed_division_ring.to_has_norm">
<path fill="none" stroke="black" d="M6810.31,-3151.4C6789.81,-3121.7 6742.61,-3048.3 6726.01,-2978.5 6720.41,-2955 6711.41,-2910 6728.01,-2848.5 6741.31,-2798.9 6748.41,-2784.5 6784.01,-2747.5 6812.51,-2717.9 6853.41,-2694.6 6883.81,-2679.8"/>
<polygon fill="black" stroke="black" points="6885.37,-2682.94 6892.91,-2675.5 6882.38,-2676.61 6885.37,-2682.94"/>
</a>
</g>
</g>
<!-- normed_division_ring&#45;&gt;metric_space -->
<g id="edge284" class="edge">
<title>normed_division_ring&#45;&gt;metric_space</title>
<g id="a_edge284"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_division_ring.to_metric_space" xlink:title="normed_division_ring.to_metric_space">
<path fill="none" stroke="black" d="M6772.51,-3151.5C6691.41,-3126.8 6523.51,-3068.4 6406.01,-2978.5 6351.61,-2936.8 6290.91,-2909.1 6323.01,-2848.5 6339.81,-2816.8 6374.21,-2794.7 6402.81,-2780.9"/>
<polygon fill="black" stroke="black" points="6404.58,-2783.94 6412.21,-2776.6 6401.66,-2777.58 6404.58,-2783.94"/>
</a>
</g>
</g>
<!-- division_ring -->
<g id="node146" class="node">
<title>division_ring</title>
<g id="a_node146"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_ring" xlink:title="division_ring">
<polygon fill="none" stroke="black" points="8641.51,-3081 8518.51,-3081 8518.51,-3050 8641.51,-3050 8641.51,-3081"/>
<text text-anchor="middle" x="8580.01" y="-3061.8" font-family="Courier,monospace" font-size="14.00">division_ring</text>
</a>
</g>
</g>
<!-- normed_division_ring&#45;&gt;division_ring -->
<g id="edge285" class="edge">
<title>normed_division_ring&#45;&gt;division_ring</title>
<g id="a_edge285"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_division_ring.to_division_ring" xlink:title="normed_division_ring.to_division_ring">
<path fill="none" stroke="black" d="M6910.11,-3152.4C6913.11,-3152.1 6916.11,-3151.8 6919.01,-3151.5 7620.11,-3088 7804.71,-3161.1 8508.81,-3079.4"/>
<polygon fill="black" stroke="black" points="8509.4,-3082.86 8518.91,-3078.2 8508.57,-3075.9 8509.4,-3082.86"/>
</a>
</g>
</g>
<!-- normed_ring -->
<g id="node147" class="node">
<title>normed_ring</title>
<g id="a_node147"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_ring" xlink:title="normed_ring">
<polygon fill="none" stroke="black" points="6920.01,-3081 6814.01,-3081 6814.01,-3050 6920.01,-3050 6920.01,-3081"/>
<text text-anchor="middle" x="6867.01" y="-3061.8" font-family="Courier,monospace" font-size="14.00">normed_ring</text>
</a>
</g>
</g>
<!-- normed_division_ring&#45;&gt;normed_ring -->
<g id="edge286" class="edge">
<title>normed_division_ring&#45;&gt;normed_ring</title>
<g id="a_edge286"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_division_ring.to_normed_ring" xlink:title="normed_division_ring.to_normed_ring">
<path fill="none" stroke="black" d="M6826.51,-3151.2C6834.21,-3135.1 6847.01,-3108.2 6856.11,-3088.9"/>
<polygon fill="black" stroke="black" points="6859.4,-3090.14 6860.51,-3079.6 6853.07,-3087.14 6859.4,-3090.14"/>
</a>
</g>
</g>
<!-- field&#45;&gt;division_ring -->
<g id="edge288" class="edge">
<title>field&#45;&gt;division_ring</title>
<g id="a_edge288"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/field.to_division_ring" xlink:title="field.to_division_ring">
<path fill="none" stroke="black" d="M8270.21,-3156.7C8325.91,-3140.4 8450.81,-3103.8 8523.91,-3082.4"/>
<polygon fill="black" stroke="black" points="8525.2,-3085.67 8533.81,-3079.5 8523.23,-3078.95 8525.2,-3085.67"/>
</a>
</g>
</g>
<!-- semifield -->
<g id="node148" class="node">
<title>semifield</title>
<g id="a_node148"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semifield" xlink:title="semifield">
<polygon fill="none" stroke="black" points="8749.01,-3081 8659.01,-3081 8659.01,-3050 8749.01,-3050 8749.01,-3081"/>
<text text-anchor="middle" x="8704.01" y="-3061.8" font-family="Courier,monospace" font-size="14.00">semifield</text>
</a>
</g>
</g>
<!-- field&#45;&gt;semifield -->
<g id="edge287" class="edge">
<title>field&#45;&gt;semifield</title>
<g id="a_edge287"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/field.to_semifield" xlink:title="field.to_semifield">
<path fill="none" stroke="black" d="M8270.11,-3159.1C8352.71,-3141.9 8591.81,-3092 8649.11,-3079.6"/>
<polygon fill="black" stroke="black" points="8650.24,-3082.93 8659.21,-3077.3 8648.69,-3076.11 8650.24,-3082.93"/>
</a>
</g>
</g>
<!-- comm_ring -->
<g id="node149" class="node">
<title>comm_ring</title>
<g id="a_node149"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_ring" xlink:title="comm_ring">
<polygon fill="none" stroke="black" points="8122.01,-2979 8032.01,-2979 8032.01,-2948 8122.01,-2948 8122.01,-2979"/>
<text text-anchor="middle" x="8077.01" y="-2959.8" font-family="Courier,monospace" font-size="14.00">comm_ring</text>
</a>
</g>
</g>
<!-- field&#45;&gt;comm_ring -->
<g id="edge289" class="edge">
<title>field&#45;&gt;comm_ring</title>
<g id="a_edge289"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/field.to_comm_ring" xlink:title="field.to_comm_ring">
<path fill="none" stroke="black" d="M8218.11,-3151.3C8193.61,-3136.3 8155.71,-3110.2 8131.01,-3079.5 8108.61,-3051.6 8092.81,-3012.9 8084.31,-2988.4"/>
<polygon fill="black" stroke="black" points="8087.64,-2987.32 8081.21,-2978.9 8080.99,-2989.49 8087.64,-2987.32"/>
</a>
</g>
</g>
<!-- euclidean_domain -->
<g id="node150" class="node">
<title>euclidean_domain</title>
<g id="a_node150"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/euclidean_domain" xlink:title="euclidean_domain">
<polygon fill="none" stroke="black" points="8288.01,-3081 8140.01,-3081 8140.01,-3050 8288.01,-3050 8288.01,-3081"/>
<text text-anchor="middle" x="8214.01" y="-3061.8" font-family="Courier,monospace" font-size="14.00">euclidean_domain</text>
</a>
</g>
</g>
<!-- field&#45;&gt;euclidean_domain -->
<g id="edge290" class="edge">
<title>field&#45;&gt;euclidean_domain</title>
<g id="a_edge290"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/field.to_euclidean_domain" xlink:title="field.to_euclidean_domain">
<path fill="none" stroke="black" d="M8238.11,-3151.2C8233.61,-3135.3 8226.11,-3108.7 8220.61,-3089.5"/>
<polygon fill="black" stroke="black" points="8223.92,-3088.33 8217.91,-3079.6 8217.17,-3090.17 8223.92,-3088.33"/>
</a>
</g>
</g>
<!-- normed_comm_ring&#45;&gt;normed_ring -->
<g id="edge291" class="edge">
<title>normed_comm_ring&#45;&gt;normed_ring</title>
<g id="a_edge291"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_comm_ring.to_normed_ring" xlink:title="normed_comm_ring.to_normed_ring">
<path fill="none" stroke="black" d="M6983.51,-3151.4C6960.31,-3134.4 6920.41,-3105.1 6893.81,-3085.7"/>
<polygon fill="black" stroke="black" points="6895.83,-3082.84 6885.71,-3079.7 6891.67,-3088.46 6895.83,-3082.84"/>
</a>
</g>
</g>
<!-- semi_normed_comm_ring -->
<g id="node151" class="node">
<title>semi_normed_comm_ring</title>
<g id="a_node151"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semi_normed_comm_ring" xlink:title="semi_normed_comm_ring">
<polygon fill="none" stroke="black" points="7382.01,-3081 7192.01,-3081 7192.01,-3050 7382.01,-3050 7382.01,-3081"/>
<text text-anchor="middle" x="7287.01" y="-3061.8" font-family="Courier,monospace" font-size="14.00">semi_normed_comm_ring</text>
</a>
</g>
</g>
<!-- normed_comm_ring&#45;&gt;semi_normed_comm_ring -->
<g id="edge292" class="edge">
<title>normed_comm_ring&#45;&gt;semi_normed_comm_ring</title>
<g id="a_edge292"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_comm_ring.to_semi_normed_comm_ring" xlink:title="normed_comm_ring.to_semi_normed_comm_ring">
<path fill="none" stroke="black" d="M7041.01,-3151.4C7092.41,-3133.6 7182.61,-3102.3 7238.31,-3082.9"/>
<polygon fill="black" stroke="black" points="7239.67,-3086.13 7248.01,-3079.6 7237.42,-3079.51 7239.67,-3086.13"/>
</a>
</g>
</g>
<!-- has_nndist -->
<g id="node152" class="node">
<title>has_nndist</title>
<g id="a_node152"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_nndist" xlink:title="has_nndist">
<polygon fill="none" stroke="black" points="6655.01,-2576 6557.01,-2576 6557.01,-2545 6655.01,-2545 6655.01,-2576"/>
<text text-anchor="middle" x="6606.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">has_nndist</text>
</a>
</g>
</g>
<!-- pseudo_metric_space&#45;&gt;has_nndist -->
<g id="edge293" class="edge">
<title>pseudo_metric_space&#45;&gt;has_nndist</title>
<g id="a_edge293"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/pseudo_metric_space.to_has_nndist" xlink:title="pseudo_metric_space.to_has_nndist">
<path fill="none" stroke="black" d="M6671.41,-2646.2C6658.81,-2629.8 6637.51,-2602 6622.61,-2582.6"/>
<polygon fill="black" stroke="black" points="6625.36,-2580.43 6616.51,-2574.6 6619.79,-2584.67 6625.36,-2580.43"/>
</a>
</g>
</g>
<!-- uniform_space -->
<g id="node153" class="node">
<title>uniform_space</title>
<g id="a_node153"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/uniform_space" xlink:title="uniform_space">
<polygon fill="none" stroke="black" points="7077.51,-2475 6954.51,-2475 6954.51,-2444 7077.51,-2444 7077.51,-2475"/>
<text text-anchor="middle" x="7016.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">uniform_space</text>
</a>
</g>
</g>
<!-- pseudo_metric_space&#45;&gt;uniform_space -->
<g id="edge294" class="edge">
<title>pseudo_metric_space&#45;&gt;uniform_space</title>
<g id="a_edge294"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/pseudo_metric_space.to_uniform_space" xlink:title="pseudo_metric_space.to_uniform_space">
<path fill="none" stroke="black" d="M6767.71,-2653.2C6869.51,-2643.2 7030.21,-2620.4 7067.01,-2574.5 7090.01,-2545.9 7060.51,-2505.2 7037.71,-2480.9"/>
<polygon fill="black" stroke="black" points="7040.16,-2478.4 7030.71,-2473.6 7035.11,-2483.24 7040.16,-2478.4"/>
</a>
</g>
</g>
<!-- has_edist -->
<g id="node154" class="node">
<title>has_edist</title>
<g id="a_node154"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_edist" xlink:title="has_edist">
<polygon fill="none" stroke="black" points="6435.01,-2475 6345.01,-2475 6345.01,-2444 6435.01,-2444 6435.01,-2475"/>
<text text-anchor="middle" x="6390.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">has_edist</text>
</a>
</g>
</g>
<!-- pseudo_metric_space&#45;&gt;has_edist -->
<g id="edge295" class="edge">
<title>pseudo_metric_space&#45;&gt;has_edist</title>
<g id="a_edge295"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/pseudo_metric_space.to_has_edist" xlink:title="pseudo_metric_space.to_has_edist">
<path fill="none" stroke="black" d="M6596.21,-2649.8C6508.11,-2637.4 6379.91,-2613.1 6350.01,-2574.5 6328.41,-2546.7 6352.11,-2506.3 6371.11,-2481.7"/>
<polygon fill="black" stroke="black" points="6374.02,-2483.67 6377.61,-2473.7 6368.59,-2479.25 6374.02,-2483.67"/>
</a>
</g>
</g>
<!-- pseudo_emetric_space -->
<g id="node155" class="node">
<title>pseudo_emetric_space</title>
<g id="a_node155"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/pseudo_emetric_space" xlink:title="pseudo_emetric_space">
<polygon fill="none" stroke="black" points="6540.01,-2576 6358.01,-2576 6358.01,-2545 6540.01,-2545 6540.01,-2576"/>
<text text-anchor="middle" x="6449.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">pseudo_emetric_space</text>
</a>
</g>
</g>
<!-- pseudo_metric_space&#45;&gt;pseudo_emetric_space -->
<g id="edge296" class="edge">
<title>pseudo_metric_space&#45;&gt;pseudo_emetric_space</title>
<g id="a_edge296"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/pseudo_metric_space.to_pseudo_emetric_space" xlink:title="pseudo_metric_space.to_pseudo_emetric_space">
<path fill="none" stroke="black" d="M6650.11,-2646.4C6608.61,-2628.8 6535.91,-2597.9 6490.21,-2578.5"/>
<polygon fill="black" stroke="black" points="6491.49,-2575.24 6480.91,-2574.6 6488.78,-2581.7 6491.49,-2575.24"/>
</a>
</g>
</g>
<!-- bornology -->
<g id="node156" class="node">
<title>bornology</title>
<g id="a_node156"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/bornology" xlink:title="bornology">
<polygon fill="none" stroke="black" points="6762.01,-2576 6672.01,-2576 6672.01,-2545 6762.01,-2545 6762.01,-2576"/>
<text text-anchor="middle" x="6717.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">bornology</text>
</a>
</g>
</g>
<!-- pseudo_metric_space&#45;&gt;bornology -->
<g id="edge297" class="edge">
<title>pseudo_metric_space&#45;&gt;bornology</title>
<g id="a_edge297"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/pseudo_metric_space.to_bornology" xlink:title="pseudo_metric_space.to_bornology">
<path fill="none" stroke="black" d="M6686.91,-2646.2C6692.51,-2630.2 6702.01,-2603.5 6708.81,-2584.2"/>
<polygon fill="black" stroke="black" points="6712.17,-2585.19 6712.21,-2574.6 6705.58,-2582.86 6712.17,-2585.19"/>
</a>
</g>
</g>
<!-- has_dist -->
<g id="node157" class="node">
<title>has_dist</title>
<g id="a_node157"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_dist" xlink:title="has_dist">
<polygon fill="none" stroke="black" points="6860.51,-2576 6779.51,-2576 6779.51,-2545 6860.51,-2545 6860.51,-2576"/>
<text text-anchor="middle" x="6820.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">has_dist</text>
</a>
</g>
</g>
<!-- pseudo_metric_space&#45;&gt;has_dist -->
<g id="edge298" class="edge">
<title>pseudo_metric_space&#45;&gt;has_dist</title>
<g id="a_edge298"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/pseudo_metric_space.to_has_dist" xlink:title="pseudo_metric_space.to_has_dist">
<path fill="none" stroke="black" d="M6700.91,-2646.4C6724.61,-2629.4 6765.51,-2600.1 6792.61,-2580.7"/>
<polygon fill="black" stroke="black" points="6794.86,-2583.39 6800.91,-2574.7 6790.76,-2577.72 6794.86,-2583.39"/>
</a>
</g>
</g>
<!-- emetric_space&#45;&gt;pseudo_emetric_space -->
<g id="edge299" class="edge">
<title>emetric_space&#45;&gt;pseudo_emetric_space</title>
<g id="a_edge299"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/emetric_space.to_pseudo_emetric_space" xlink:title="emetric_space.to_pseudo_emetric_space">
<path fill="none" stroke="black" d="M6449.01,-2646.2C6449.01,-2630.3 6449.01,-2604 6449.01,-2584.7"/>
<polygon fill="black" stroke="black" points="6452.51,-2584.6 6449.01,-2574.6 6445.51,-2584.6 6452.51,-2584.6"/>
</a>
</g>
</g>
<!-- linear_ordered_add_comm_group&#45;&gt;linear_order -->
<g id="edge300" class="edge">
<title>linear_ordered_add_comm_group&#45;&gt;linear_order</title>
<g id="a_edge300"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_add_comm_group.to_linear_order" xlink:title="linear_ordered_add_comm_group.to_linear_order">
<path fill="none" stroke="black" d="M10984.01,-2949.4C11017.01,-2933.5 11073.01,-2905.9 11118.01,-2877.5 11136.01,-2866 11138.01,-2857.8 11157.01,-2848.5 11273.01,-2793.1 11323.01,-2834.9 11437.01,-2776.5 11485.01,-2752.1 11531.01,-2708.7 11556.01,-2682.9"/>
<polygon fill="black" stroke="black" points="11558.68,-2685.17 11563.01,-2675.5 11553.6,-2680.36 11558.68,-2685.17"/>
</a>
</g>
</g>
<!-- ordered_add_comm_group -->
<g id="node158" class="node">
<title>ordered_add_comm_group</title>
<g id="a_node158"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_add_comm_group" xlink:title="ordered_add_comm_group">
<polygon fill="none" stroke="black" points="10106.51,-2878 9907.51,-2878 9907.51,-2847 10106.51,-2847 10106.51,-2878"/>
<text text-anchor="middle" x="10007.01" y="-2858.8" font-family="Courier,monospace" font-size="14.00">ordered_add_comm_group</text>
</a>
</g>
</g>
<!-- linear_ordered_add_comm_group&#45;&gt;ordered_add_comm_group -->
<g id="edge301" class="edge">
<title>linear_ordered_add_comm_group&#45;&gt;ordered_add_comm_group</title>
<g id="a_edge301"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_add_comm_group.to_ordered_add_comm_group" xlink:title="linear_ordered_add_comm_group.to_ordered_add_comm_group">
<path fill="none" stroke="black" d="M10827.01,-2949.7C10639.01,-2930.1 10291.01,-2893.7 10115.01,-2875.3"/>
<polygon fill="black" stroke="black" points="10115.31,-2871.81 10105.01,-2874.3 10114.62,-2878.78 10115.31,-2871.81"/>
</a>
</g>
</g>
<!-- linear_ordered_cancel_add_comm_monoid -->
<g id="node159" class="node">
<title>linear_ordered_cancel_add_comm_monoid</title>
<g id="a_node159"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_cancel_add_comm_monoid" xlink:title="linear_ordered_cancel_add_comm_monoid">
<polygon fill="none" stroke="black" points="10749.51,-2878 10424.51,-2878 10424.51,-2847 10749.51,-2847 10749.51,-2878"/>
<text text-anchor="middle" x="10587.01" y="-2858.8" font-family="Courier,monospace" font-size="14.00">linear_ordered_cancel_add_comm_monoid</text>
</a>
</g>
</g>
<!-- linear_ordered_add_comm_group&#45;&gt;linear_ordered_cancel_add_comm_monoid -->
<g id="edge302" class="edge">
<title>linear_ordered_add_comm_group&#45;&gt;linear_ordered_cancel_add_comm_monoid</title>
<g id="a_edge302"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_add_comm_group.to_linear_ordered_cancel_add_comm_monoid" xlink:title="linear_ordered_add_comm_group.to_linear_ordered_cancel_add_comm_monoid">
<path fill="none" stroke="black" d="M10904.01,-2949.4C10837.01,-2931.4 10719.01,-2899.5 10647.01,-2880.2"/>
<polygon fill="black" stroke="black" points="10647.57,-2876.73 10637.01,-2877.6 10645.81,-2883.5 10647.57,-2876.73"/>
</a>
</g>
</g>
<!-- normed_group&#45;&gt;has_norm -->
<g id="edge303" class="edge">
<title>normed_group&#45;&gt;has_norm</title>
<g id="a_edge303"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_group.to_has_norm" xlink:title="normed_group.to_has_norm">
<path fill="none" stroke="black" d="M6952.01,-2848.3C6947.11,-2814.6 6934.51,-2727.6 6928.41,-2685.5"/>
<polygon fill="black" stroke="black" points="6931.88,-2685.01 6927.01,-2675.6 6924.95,-2685.99 6931.88,-2685.01"/>
</a>
</g>
</g>
<!-- normed_group&#45;&gt;metric_space -->
<g id="edge304" class="edge">
<title>normed_group&#45;&gt;metric_space</title>
<g id="a_edge304"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_group.to_metric_space" xlink:title="normed_group.to_metric_space">
<path fill="none" stroke="black" d="M6896.61,-2850.7C6802.61,-2832.3 6616.41,-2795.8 6516.41,-2776.2"/>
<polygon fill="black" stroke="black" points="6516.91,-2772.73 6506.41,-2774.2 6515.53,-2779.59 6516.91,-2772.73"/>
</a>
</g>
</g>
<!-- semi_normed_group -->
<g id="node160" class="node">
<title>semi_normed_group</title>
<g id="a_node160"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semi_normed_group" xlink:title="semi_normed_group">
<polygon fill="none" stroke="black" points="7129.51,-2778 6972.51,-2778 6972.51,-2747 7129.51,-2747 7129.51,-2778"/>
<text text-anchor="middle" x="7051.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">semi_normed_group</text>
</a>
</g>
</g>
<!-- normed_group&#45;&gt;semi_normed_group -->
<g id="edge305" class="edge">
<title>normed_group&#45;&gt;semi_normed_group</title>
<g id="a_edge305"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_group.to_semi_normed_group" xlink:title="normed_group.to_semi_normed_group">
<path fill="none" stroke="black" d="M6967.51,-2848.2C6983.81,-2831.5 7011.61,-2803.2 7030.61,-2783.8"/>
<polygon fill="black" stroke="black" points="7033.15,-2786.21 7037.61,-2776.6 7028.13,-2781.33 7033.15,-2786.21"/>
</a>
</g>
</g>
<!-- add_comm_group -->
<g id="node161" class="node">
<title>add_comm_group</title>
<g id="a_node161"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_group" xlink:title="add_comm_group">
<polygon fill="none" stroke="black" points="8808.01,-2576 8676.01,-2576 8676.01,-2545 8808.01,-2545 8808.01,-2576"/>
<text text-anchor="middle" x="8742.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">add_comm_group</text>
</a>
</g>
</g>
<!-- normed_group&#45;&gt;add_comm_group -->
<g id="edge306" class="edge">
<title>normed_group&#45;&gt;add_comm_group</title>
<g id="a_edge306"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_group.to_add_comm_group" xlink:title="normed_group.to_add_comm_group">
<path fill="none" stroke="black" d="M7011.11,-2853.8C7026.31,-2851.8 7042.81,-2849.9 7058.01,-2848.5 7204.21,-2835 8255.81,-2859.3 8377.01,-2776.5 8429.41,-2740.7 8387.81,-2687.8 8436.01,-2646.5 8454.21,-2630.9 8589.21,-2597 8673.71,-2576.9"/>
<polygon fill="black" stroke="black" points="8674.63,-2580.28 8683.51,-2574.5 8672.97,-2573.48 8674.63,-2580.28"/>
</a>
</g>
</g>
<!-- linear_ordered_semifield&#45;&gt;semifield -->
<g id="edge307" class="edge">
<title>linear_ordered_semifield&#45;&gt;semifield</title>
<g id="a_edge307"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_semifield.to_semifield" xlink:title="linear_ordered_semifield.to_semifield">
<path fill="none" stroke="black" d="M8704.01,-3151.2C8704.01,-3135.3 8704.01,-3109 8704.01,-3089.7"/>
<polygon fill="black" stroke="black" points="8707.51,-3089.6 8704.01,-3079.6 8700.51,-3089.6 8707.51,-3089.6"/>
</a>
</g>
</g>
<!-- linear_ordered_semiring -->
<g id="node162" class="node">
<title>linear_ordered_semiring</title>
<g id="a_node162"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_semiring" xlink:title="linear_ordered_semiring">
<polygon fill="none" stroke="black" points="10426.51,-2979 10219.51,-2979 10219.51,-2948 10426.51,-2948 10426.51,-2979"/>
<text text-anchor="middle" x="10323.01" y="-2959.8" font-family="Courier,monospace" font-size="14.00">linear_ordered_semiring</text>
</a>
</g>
</g>
<!-- linear_ordered_semifield&#45;&gt;linear_ordered_semiring -->
<g id="edge308" class="edge">
<title>linear_ordered_semifield&#45;&gt;linear_ordered_semiring</title>
<g id="a_edge308"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_semifield.to_linear_ordered_semiring" xlink:title="linear_ordered_semifield.to_linear_ordered_semiring">
<path fill="none" stroke="black" d="M8810.71,-3153.2C8954.81,-3137.2 9220.01,-3107.3 9446.01,-3079.5 9722.21,-3045.6 10047.01,-3002.3 10213.01,-2979.9"/>
<polygon fill="black" stroke="black" points="10213.6,-2983.35 10223.01,-2978.5 10212.63,-2976.42 10213.6,-2983.35"/>
</a>
</g>
</g>
<!-- linear_ordered_comm_ring&#45;&gt;comm_monoid -->
<g id="edge309" class="edge">
<title>linear_ordered_comm_ring&#45;&gt;comm_monoid</title>
<g id="a_edge309"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_comm_ring.to_comm_monoid" xlink:title="linear_ordered_comm_ring.to_comm_monoid">
<path fill="none" stroke="black" d="M8401.51,-3151.4C8380.31,-3136.6 8349.31,-3110.9 8336.01,-3079.5 8313.41,-3026.3 8304.01,-2998.3 8335.01,-2949.5 8375.31,-2886 8429.81,-2925.1 8488.01,-2877.5 8531.31,-2842.1 8545.41,-2829.6 8563.01,-2776.5 8573.51,-2744.8 8557.91,-2707.5 8545.11,-2684.3"/>
<polygon fill="black" stroke="black" points="8548.06,-2682.4 8540.01,-2675.5 8542,-2685.91 8548.06,-2682.4"/>
</a>
</g>
</g>
<!-- linear_ordered_comm_ring&#45;&gt;linear_ordered_semiring -->
<g id="edge311" class="edge">
<title>linear_ordered_comm_ring&#45;&gt;linear_ordered_semiring</title>
<g id="a_edge311"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_comm_ring.to_linear_ordered_semiring" xlink:title="linear_ordered_comm_ring.to_linear_ordered_semiring">
<path fill="none" stroke="black" d="M8529.61,-3155.3C8686.41,-3140.7 8988.71,-3111.3 9245.01,-3079.5 9334.61,-3068.4 9356.41,-3061.2 9446.01,-3050.5 9782.21,-3010.5 9870.31,-3015.1 10211.01,-2978.6"/>
<polygon fill="black" stroke="black" points="10211.46,-2982.07 10221.01,-2977.5 10210.69,-2975.11 10211.46,-2982.07"/>
</a>
</g>
</g>
<!-- linear_ordered_ring -->
<g id="node163" class="node">
<title>linear_ordered_ring</title>
<g id="a_node163"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_ring" xlink:title="linear_ordered_ring">
<polygon fill="none" stroke="black" points="10475.01,-3081 10301.01,-3081 10301.01,-3050 10475.01,-3050 10475.01,-3081"/>
<text text-anchor="middle" x="10388.01" y="-3061.8" font-family="Courier,monospace" font-size="14.00">linear_ordered_ring</text>
</a>
</g>
</g>
<!-- linear_ordered_comm_ring&#45;&gt;linear_ordered_ring -->
<g id="edge310" class="edge">
<title>linear_ordered_comm_ring&#45;&gt;linear_ordered_ring</title>
<g id="a_edge310"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_comm_ring.to_linear_ordered_ring" xlink:title="linear_ordered_comm_ring.to_linear_ordered_ring">
<path fill="none" stroke="black" d="M8529.91,-3155.7C8549.21,-3154.2 8569.21,-3152.7 8588.01,-3151.5 9238.81,-3109.4 10023.01,-3079.2 10292.01,-3069.4"/>
<polygon fill="black" stroke="black" points="10292.16,-3072.9 10302.01,-3069 10291.88,-3065.9 10292.16,-3072.9"/>
</a>
</g>
</g>
<!-- ordered_comm_ring -->
<g id="node164" class="node">
<title>ordered_comm_ring</title>
<g id="a_node164"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_comm_ring" xlink:title="ordered_comm_ring">
<polygon fill="none" stroke="black" points="8501.51,-3081 8344.51,-3081 8344.51,-3050 8501.51,-3050 8501.51,-3081"/>
<text text-anchor="middle" x="8423.01" y="-3061.8" font-family="Courier,monospace" font-size="14.00">ordered_comm_ring</text>
</a>
</g>
</g>
<!-- linear_ordered_comm_ring&#45;&gt;ordered_comm_ring -->
<g id="edge312" class="edge">
<title>linear_ordered_comm_ring&#45;&gt;ordered_comm_ring</title>
<g id="a_edge312"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_comm_ring.to_ordered_comm_ring" xlink:title="linear_ordered_comm_ring.to_ordered_comm_ring">
<path fill="none" stroke="black" d="M8423.01,-3151.2C8423.01,-3135.3 8423.01,-3109 8423.01,-3089.7"/>
<polygon fill="black" stroke="black" points="8426.51,-3089.6 8423.01,-3079.6 8419.51,-3089.6 8426.51,-3089.6"/>
</a>
</g>
</g>
<!-- division_semiring -->
<g id="node282" class="node">
<title>division_semiring</title>
<g id="a_node282"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_semiring" xlink:title="division_semiring">
<polygon fill="none" stroke="black" points="8782.51,-2979 8625.51,-2979 8625.51,-2948 8782.51,-2948 8782.51,-2979"/>
<text text-anchor="middle" x="8704.01" y="-2959.8" font-family="Courier,monospace" font-size="14.00">division_semiring</text>
</a>
</g>
</g>
<!-- division_ring&#45;&gt;division_semiring -->
<g id="edge1333" class="edge">
<title>division_ring&#45;&gt;division_semiring</title>
<g id="a_edge1333"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_ring.to_division_semiring" xlink:title="division_ring.to_division_semiring">
<path fill="none" stroke="black" d="M8597.01,-3050.4C8618.11,-3033.6 8654.41,-3004.6 8678.71,-2985.2"/>
<polygon fill="black" stroke="black" points="8681.21,-2987.69 8686.81,-2978.7 8676.82,-2982.23 8681.21,-2987.69"/>
</a>
</g>
</g>
<!-- nontrivial -->
<g id="node286" class="node">
<title>nontrivial</title>
<g id="a_node286"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nontrivial" xlink:title="nontrivial">
<polygon fill="none" stroke="black" points="10539.01,-2778 10441.01,-2778 10441.01,-2747 10539.01,-2747 10539.01,-2778"/>
<text text-anchor="middle" x="10490.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">nontrivial</text>
</a>
</g>
</g>
<!-- division_ring&#45;&gt;nontrivial -->
<g id="edge1335" class="edge">
<title>division_ring&#45;&gt;nontrivial</title>
<g id="a_edge1335"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_ring.to_nontrivial" xlink:title="division_ring.to_nontrivial">
<path fill="none" stroke="black" d="M8641.01,-3051.7C8644.01,-3051.3 8647.11,-3050.9 8650.01,-3050.5 8912.61,-3017.4 9588.31,-3063.5 9839.01,-2978.5 9860.81,-2971.1 9860.81,-2958.5 9882.01,-2949.5 10025.01,-2889.1 10075.01,-2924.3 10223.01,-2877.5 10246.01,-2870.3 10381.01,-2811 10450.01,-2780.7"/>
<polygon fill="black" stroke="black" points="10451.36,-2783.93 10459.01,-2776.6 10448.46,-2777.56 10451.36,-2783.93"/>
</a>
</g>
</g>
<!-- div_inv_monoid -->
<g id="node288" class="node">
<title>div_inv_monoid</title>
<g id="a_node288"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/div_inv_monoid" xlink:title="div_inv_monoid">
<polygon fill="none" stroke="black" points="9437.01,-2576 9305.01,-2576 9305.01,-2545 9437.01,-2545 9437.01,-2576"/>
<text text-anchor="middle" x="9371.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">div_inv_monoid</text>
</a>
</g>
</g>
<!-- division_ring&#45;&gt;div_inv_monoid -->
<g id="edge1336" class="edge">
<title>division_ring&#45;&gt;div_inv_monoid</title>
<g id="a_edge1336"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_ring.to_div_inv_monoid" xlink:title="division_ring.to_div_inv_monoid">
<path fill="none" stroke="black" d="M8580.01,-3050.5C8580.71,-3026.1 8586.11,-2974.8 8617.01,-2949.5 8727.61,-2859.1 9123.11,-2929.9 9256.01,-2877.5 9276.11,-2869.6 9276.11,-2858.9 9295.01,-2848.5 9373.01,-2805.5 9421.91,-2842.2 9482.01,-2776.5 9522.01,-2732.8 9540.01,-2698.1 9511.01,-2646.5 9492.51,-2613.5 9455.51,-2591.8 9424.21,-2578.4"/>
<polygon fill="black" stroke="black" points="9425.3,-2575.06 9414.71,-2574.6 9422.7,-2581.56 9425.3,-2575.06"/>
</a>
</g>
</g>
<!-- ring -->
<g id="node343" class="node">
<title>ring</title>
<g id="a_node343"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ring" xlink:title="ring">
<polygon fill="none" stroke="black" points="8087.01,-2878 8039.01,-2878 8039.01,-2847 8087.01,-2847 8087.01,-2878"/>
<text text-anchor="middle" x="8063.01" y="-2858.8" font-family="Courier,monospace" font-size="14.00">ring</text>
</a>
</g>
</g>
<!-- division_ring&#45;&gt;ring -->
<g id="edge1334" class="edge">
<title>division_ring&#45;&gt;ring</title>
<g id="a_edge1334"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_ring.to_ring" xlink:title="division_ring.to_ring">
<path fill="none" stroke="black" d="M8538.51,-3050.4C8489.61,-3034.2 8405.91,-3005.7 8335.01,-2978.5 8248.11,-2945.1 8147.41,-2901.4 8096.41,-2878.9"/>
<polygon fill="black" stroke="black" points="8097.77,-2875.67 8087.21,-2874.8 8094.92,-2882.07 8097.77,-2875.67"/>
</a>
</g>
</g>
<!-- normed_ring&#45;&gt;has_norm -->
<g id="edge1337" class="edge">
<title>normed_ring&#45;&gt;has_norm</title>
<g id="a_edge1337"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_ring.to_has_norm" xlink:title="normed_ring.to_has_norm">
<path fill="none" stroke="black" d="M6830.51,-3050.4C6800.71,-3037.1 6760.51,-3013.6 6742.01,-2978.5 6715.01,-2927.4 6720.11,-2902 6742.01,-2848.5 6773.01,-2772.7 6851.31,-2711 6894.81,-2681.3"/>
<polygon fill="black" stroke="black" points="6896.9,-2684.11 6903.21,-2675.6 6892.97,-2678.32 6896.9,-2684.11"/>
</a>
</g>
</g>
<!-- normed_ring&#45;&gt;metric_space -->
<g id="edge1338" class="edge">
<title>normed_ring&#45;&gt;metric_space</title>
<g id="a_edge1338"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_ring.to_metric_space" xlink:title="normed_ring.to_metric_space">
<path fill="none" stroke="black" d="M6814.21,-3064C6703.11,-3060.7 6446.21,-3035.6 6334.01,-2877.5 6306.71,-2839.1 6364.21,-2802 6407.31,-2780.9"/>
<polygon fill="black" stroke="black" points="6409,-2783.97 6416.51,-2776.5 6405.98,-2777.66 6409,-2783.97"/>
</a>
</g>
</g>
<!-- semi_normed_ring -->
<g id="node342" class="node">
<title>semi_normed_ring</title>
<g id="a_node342"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semi_normed_ring" xlink:title="semi_normed_ring">
<polygon fill="none" stroke="black" points="7342.01,-2979 7194.01,-2979 7194.01,-2948 7342.01,-2948 7342.01,-2979"/>
<text text-anchor="middle" x="7268.01" y="-2959.8" font-family="Courier,monospace" font-size="14.00">semi_normed_ring</text>
</a>
</g>
</g>
<!-- normed_ring&#45;&gt;semi_normed_ring -->
<g id="edge1339" class="edge">
<title>normed_ring&#45;&gt;semi_normed_ring</title>
<g id="a_edge1339"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_ring.to_semi_normed_ring" xlink:title="normed_ring.to_semi_normed_ring">
<path fill="none" stroke="black" d="M6919.81,-3051C6992.91,-3032.9 7124.51,-3000.4 7203.31,-2981"/>
<polygon fill="black" stroke="black" points="7204.29,-2984.36 7213.11,-2978.5 7202.56,-2977.58 7204.29,-2984.36"/>
</a>
</g>
</g>
<!-- normed_ring&#45;&gt;ring -->
<g id="edge1340" class="edge">
<title>normed_ring&#45;&gt;ring</title>
<g id="a_edge1340"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_ring.to_ring" xlink:title="normed_ring.to_ring">
<path fill="none" stroke="black" d="M6919.51,-3052.2C6922.41,-3051.6 6925.21,-3051 6928.01,-3050.5 7039.71,-3029 7851.61,-2898 8028.91,-2869.5"/>
<polygon fill="black" stroke="black" points="8029.59,-2872.94 8038.91,-2867.9 8028.49,-2866.02 8029.59,-2872.94"/>
</a>
</g>
</g>
<!-- non_unital_normed_ring -->
<g id="node656" class="node">
<title>non_unital_normed_ring</title>
<g id="a_node656"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_normed_ring" xlink:title="non_unital_normed_ring">
<polygon fill="none" stroke="black" points="7138.51,-2979 6939.51,-2979 6939.51,-2948 7138.51,-2948 7138.51,-2979"/>
<text text-anchor="middle" x="7039.01" y="-2959.8" font-family="Courier,monospace" font-size="14.00">non_unital_normed_ring</text>
</a>
</g>
</g>
<!-- normed_ring&#45;&gt;non_unital_normed_ring -->
<g id="edge1341" class="edge">
<title>normed_ring&#45;&gt;non_unital_normed_ring</title>
<g id="a_edge1341"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_ring.to_non_unital_normed_ring" xlink:title="normed_ring.to_non_unital_normed_ring">
<path fill="none" stroke="black" d="M6890.61,-3050.4C6920.61,-3033.2 6972.61,-3003.2 7006.41,-2983.7"/>
<polygon fill="black" stroke="black" points="7008.5,-2986.54 7015.51,-2978.6 7005.08,-2980.44 7008.5,-2986.54"/>
</a>
</g>
</g>
<!-- comm_semiring -->
<g id="node274" class="node">
<title>comm_semiring</title>
<g id="a_node274"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_semiring" xlink:title="comm_semiring">
<polygon fill="none" stroke="black" points="8673.51,-2878 8550.51,-2878 8550.51,-2847 8673.51,-2847 8673.51,-2878"/>
<text text-anchor="middle" x="8612.01" y="-2858.8" font-family="Courier,monospace" font-size="14.00">comm_semiring</text>
</a>
</g>
</g>
<!-- semifield&#45;&gt;comm_semiring -->
<g id="edge508" class="edge">
<title>semifield&#45;&gt;comm_semiring</title>
<g id="a_edge508"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semifield.to_comm_semiring" xlink:title="semifield.to_comm_semiring">
<path fill="none" stroke="black" d="M8682.71,-3050.3C8661.71,-3035.4 8630.91,-3009.6 8617.01,-2978.5 8604.01,-2949.3 8605.31,-2911.8 8608.11,-2887.8"/>
<polygon fill="black" stroke="black" points="8611.59,-2888.19 8609.51,-2877.8 8604.66,-2887.22 8611.59,-2888.19"/>
</a>
</g>
</g>
<!-- comm_group_with_zero -->
<g id="node281" class="node">
<title>comm_group_with_zero</title>
<g id="a_node281"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_group_with_zero" xlink:title="comm_group_with_zero">
<polygon fill="none" stroke="black" points="8981.01,-2979 8799.01,-2979 8799.01,-2948 8981.01,-2948 8981.01,-2979"/>
<text text-anchor="middle" x="8890.01" y="-2959.8" font-family="Courier,monospace" font-size="14.00">comm_group_with_zero</text>
</a>
</g>
</g>
<!-- semifield&#45;&gt;comm_group_with_zero -->
<g id="edge509" class="edge">
<title>semifield&#45;&gt;comm_group_with_zero</title>
<g id="a_edge509"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semifield.to_comm_group_with_zero" xlink:title="semifield.to_comm_group_with_zero">
<path fill="none" stroke="black" d="M8729.51,-3050.4C8762.11,-3033.1 8818.71,-3002.9 8855.31,-2983.5"/>
<polygon fill="black" stroke="black" points="8857.33,-2986.39 8864.51,-2978.6 8854.04,-2980.21 8857.33,-2986.39"/>
</a>
</g>
</g>
<!-- semifield&#45;&gt;division_semiring -->
<g id="edge510" class="edge">
<title>semifield&#45;&gt;division_semiring</title>
<g id="a_edge510"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semifield.to_division_semiring" xlink:title="semifield.to_division_semiring">
<path fill="none" stroke="black" d="M8704.01,-3050.2C8704.01,-3034.3 8704.01,-3008 8704.01,-2988.7"/>
<polygon fill="black" stroke="black" points="8707.51,-2988.6 8704.01,-2978.6 8700.51,-2988.6 8707.51,-2988.6"/>
</a>
</g>
</g>
<!-- comm_ring&#45;&gt;comm_monoid -->
<g id="edge1342" class="edge">
<title>comm_ring&#45;&gt;comm_monoid</title>
<g id="a_edge1342"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_ring.to_comm_monoid" xlink:title="comm_ring.to_comm_monoid">
<path fill="none" stroke="black" d="M8107.11,-2949.4C8167.51,-2921.3 8306.81,-2853.4 8411.01,-2776.5 8449.91,-2747.8 8489.41,-2707.4 8512.01,-2683.1"/>
<polygon fill="black" stroke="black" points="8514.81,-2685.23 8519.01,-2675.5 8509.66,-2680.48 8514.81,-2685.23"/>
</a>
</g>
</g>
<!-- comm_ring&#45;&gt;comm_semiring -->
<g id="edge1343" class="edge">
<title>comm_ring&#45;&gt;comm_semiring</title>
<g id="a_edge1343"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_ring.to_comm_semiring" xlink:title="comm_ring.to_comm_semiring">
<path fill="none" stroke="black" d="M8121.71,-2954.7C8214.61,-2937.5 8429.11,-2897.8 8541.11,-2877.1"/>
<polygon fill="black" stroke="black" points="8541.71,-2880.55 8550.91,-2875.3 8540.45,-2873.66 8541.71,-2880.55"/>
</a>
</g>
</g>
<!-- comm_ring&#45;&gt;ring -->
<g id="edge1344" class="edge">
<title>comm_ring&#45;&gt;ring</title>
<g id="a_edge1344"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_ring.to_ring" xlink:title="comm_ring.to_ring">
<path fill="none" stroke="black" d="M8075.11,-2949.2C8072.81,-2933.3 8069.11,-2907 8066.41,-2887.7"/>
<polygon fill="black" stroke="black" points="8069.85,-2886.98 8064.91,-2877.6 8062.92,-2888.01 8069.85,-2886.98"/>
</a>
</g>
</g>
<!-- non_unital_comm_ring -->
<g id="node501" class="node">
<title>non_unital_comm_ring</title>
<g id="a_node501"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_comm_ring" xlink:title="non_unital_comm_ring">
<polygon fill="none" stroke="black" points="7692.01,-2878 7510.01,-2878 7510.01,-2847 7692.01,-2847 7692.01,-2878"/>
<text text-anchor="middle" x="7601.01" y="-2858.8" font-family="Courier,monospace" font-size="14.00">non_unital_comm_ring</text>
</a>
</g>
</g>
<!-- comm_ring&#45;&gt;non_unital_comm_ring -->
<g id="edge1345" class="edge">
<title>comm_ring&#45;&gt;non_unital_comm_ring</title>
<g id="a_edge1345"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_ring.to_non_unital_comm_ring" xlink:title="comm_ring.to_non_unital_comm_ring">
<path fill="none" stroke="black" d="M8032.21,-2953.7C7950.41,-2936.7 7776.11,-2900.4 7676.01,-2879.6"/>
<polygon fill="black" stroke="black" points="7676.42,-2876.11 7665.91,-2877.5 7674.99,-2882.96 7676.42,-2876.11"/>
</a>
</g>
</g>
<!-- euclidean_domain&#45;&gt;comm_ring -->
<g id="edge1348" class="edge">
<title>euclidean_domain&#45;&gt;comm_ring</title>
<g id="a_edge1348"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/euclidean_domain.to_comm_ring" xlink:title="euclidean_domain.to_comm_ring">
<path fill="none" stroke="black" d="M8195.21,-3050.4C8171.71,-3033.4 8131.21,-3004.1 8104.21,-2984.7"/>
<polygon fill="black" stroke="black" points="8106.15,-2981.78 8096.01,-2978.7 8102.02,-2987.43 8106.15,-2981.78"/>
</a>
</g>
</g>
<!-- euclidean_domain&#45;&gt;nontrivial -->
<g id="edge1346" class="edge">
<title>euclidean_domain&#45;&gt;nontrivial</title>
<g id="a_edge1346"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/euclidean_domain.to_nontrivial" xlink:title="euclidean_domain.to_nontrivial">
<path fill="none" stroke="black" d="M8287.81,-3055.1C8303.71,-3053.4 8320.41,-3051.7 8336.01,-3050.5 8661.81,-3024.5 9501.21,-3099 9805.01,-2978.5 9823.51,-2971.2 9821.21,-2958.2 9839.01,-2949.5 9980.01,-2880.4 10042.01,-2942.8 10185.01,-2877.5 10204.01,-2868.7 10204.01,-2858.3 10223.01,-2848.5 10291.01,-2813.2 10376.01,-2789.1 10431.01,-2775.7"/>
<polygon fill="black" stroke="black" points="10432.11,-2779.04 10441.01,-2773.3 10430.47,-2772.23 10432.11,-2779.04"/>
</a>
</g>
</g>
<!-- has_div -->
<g id="node420" class="node">
<title>has_div</title>
<g id="a_node420"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_div" xlink:title="has_div">
<polygon fill="none" stroke="black" points="9405.51,-2475 9332.51,-2475 9332.51,-2444 9405.51,-2444 9405.51,-2475"/>
<text text-anchor="middle" x="9369.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">has_div</text>
</a>
</g>
</g>
<!-- euclidean_domain&#45;&gt;has_div -->
<g id="edge1347" class="edge">
<title>euclidean_domain&#45;&gt;has_div</title>
<g id="a_edge1347"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/euclidean_domain.has_div" xlink:title="euclidean_domain.has_div">
<path fill="none" stroke="black" d="M8201.11,-3050.2C8182.31,-3028.4 8151.31,-2984.6 8169.01,-2949.5 8227.51,-2833.8 8320.51,-2875.7 8404.01,-2776.5 8445.61,-2727.1 8415.71,-2683 8469.01,-2646.5 8607.21,-2551.6 9064.01,-2636 9220.01,-2574.5 9273.01,-2553.6 9323.11,-2507.9 9349.51,-2481"/>
<polygon fill="black" stroke="black" points="9352.22,-2483.24 9356.61,-2473.6 9347.17,-2478.39 9352.22,-2483.24"/>
</a>
</g>
</g>
<!-- has_mod -->
<g id="node657" class="node">
<title>has_mod</title>
<g id="a_node657"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_mod" xlink:title="has_mod">
<polygon fill="none" stroke="black" points="8250.51,-2979 8177.51,-2979 8177.51,-2948 8250.51,-2948 8250.51,-2979"/>
<text text-anchor="middle" x="8214.01" y="-2959.8" font-family="Courier,monospace" font-size="14.00">has_mod</text>
</a>
</g>
</g>
<!-- euclidean_domain&#45;&gt;has_mod -->
<g id="edge1349" class="edge">
<title>euclidean_domain&#45;&gt;has_mod</title>
<g id="a_edge1349"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/euclidean_domain.has_mod" xlink:title="euclidean_domain.has_mod">
<path fill="none" stroke="black" d="M8214.01,-3050.2C8214.01,-3034.3 8214.01,-3008 8214.01,-2988.7"/>
<polygon fill="black" stroke="black" points="8217.51,-2988.6 8214.01,-2978.6 8210.51,-2988.6 8217.51,-2988.6"/>
</a>
</g>
</g>
<!-- semi_normed_comm_ring&#45;&gt;comm_ring -->
<g id="edge1351" class="edge">
<title>semi_normed_comm_ring&#45;&gt;comm_ring</title>
<g id="a_edge1351"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semi_normed_comm_ring.to_comm_ring" xlink:title="semi_normed_comm_ring.to_comm_ring">
<path fill="none" stroke="black" d="M7381.11,-3052.2C7547.61,-3031.3 7889.01,-2988.6 8022.11,-2971.9"/>
<polygon fill="black" stroke="black" points="8022.65,-2975.36 8032.11,-2970.6 8021.75,-2968.42 8022.65,-2975.36"/>
</a>
</g>
</g>
<!-- semi_normed_comm_ring&#45;&gt;semi_normed_ring -->
<g id="edge1350" class="edge">
<title>semi_normed_comm_ring&#45;&gt;semi_normed_ring</title>
<g id="a_edge1350"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semi_normed_comm_ring.to_semi_normed_ring" xlink:title="semi_normed_comm_ring.to_semi_normed_ring">
<path fill="none" stroke="black" d="M7284.41,-3050.2C7281.31,-3034.3 7276.21,-3008 7272.61,-2988.7"/>
<polygon fill="black" stroke="black" points="7275.99,-2987.73 7270.61,-2978.6 7269.12,-2989.09 7275.99,-2987.73"/>
</a>
</g>
</g>
<!-- topological_space -->
<g id="node341" class="node">
<title>topological_space</title>
<g id="a_node341"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_space" xlink:title="topological_space">
<polygon fill="none" stroke="black" points="7050.51,-2374 6893.51,-2374 6893.51,-2343 7050.51,-2343 7050.51,-2374"/>
<text text-anchor="middle" x="6972.01" y="-2354.8" font-family="Courier,monospace" font-size="14.00">topological_space</text>
</a>
</g>
</g>
<!-- uniform_space&#45;&gt;topological_space -->
<g id="edge635" class="edge">
<title>uniform_space&#45;&gt;topological_space</title>
<g id="a_edge635"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/uniform_space.to_topological_space" xlink:title="uniform_space.to_topological_space">
<path fill="none" stroke="black" d="M7009.91,-2444.2C7002.71,-2428.1 6990.81,-2401.2 6982.21,-2381.9"/>
<polygon fill="black" stroke="black" points="6985.35,-2380.34 6978.11,-2372.6 6978.95,-2383.16 6985.35,-2380.34"/>
</a>
</g>
</g>
<!-- pseudo_emetric_space&#45;&gt;uniform_space -->
<g id="edge636" class="edge">
<title>pseudo_emetric_space&#45;&gt;uniform_space</title>
<g id="a_edge636"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/pseudo_emetric_space.to_uniform_space" xlink:title="pseudo_emetric_space.to_uniform_space">
<path fill="none" stroke="black" d="M6526.41,-2545.5C6636.71,-2526.2 6837.91,-2491.1 6944.81,-2472.4"/>
<polygon fill="black" stroke="black" points="6945.54,-2475.83 6954.81,-2470.7 6944.37,-2468.93 6945.54,-2475.83"/>
</a>
</g>
</g>
<!-- pseudo_emetric_space&#45;&gt;has_edist -->
<g id="edge637" class="edge">
<title>pseudo_emetric_space&#45;&gt;has_edist</title>
<g id="a_edge637"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/pseudo_emetric_space.to_has_edist" xlink:title="pseudo_emetric_space.to_has_edist">
<path fill="none" stroke="black" d="M6440.81,-2545.2C6431.11,-2529 6414.91,-2501.7 6403.41,-2482.4"/>
<polygon fill="black" stroke="black" points="6406.27,-2480.36 6398.11,-2473.6 6400.28,-2483.97 6406.27,-2480.36"/>
</a>
</g>
</g>
<!-- ordered_add_comm_group&#45;&gt;partial_order -->
<g id="edge755" class="edge">
<title>ordered_add_comm_group&#45;&gt;partial_order</title>
<g id="a_edge755"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_add_comm_group.to_partial_order" xlink:title="ordered_add_comm_group.to_partial_order">
<path fill="none" stroke="black" d="M10105.01,-2858.8C10189.01,-2856 10311.01,-2852 10418.01,-2848.5 11406.01,-2816.3 11655.01,-2848.1 12641.01,-2776.5 12653.01,-2775.6 13524.01,-2682.3 13534.01,-2675.5 13590.01,-2639 13571.01,-2599.8 13610.01,-2545.5 13635.01,-2511 13646.01,-2506.6 13673.01,-2473.5 13708.01,-2430 13715.01,-2417.9 13748.01,-2372.5 13771.01,-2340.7 13797.01,-2303.4 13813.01,-2280.3"/>
<polygon fill="black" stroke="black" points="13816.11,-2281.99 13819.01,-2271.8 13810.39,-2277.95 13816.11,-2281.99"/>
</a>
</g>
</g>
<!-- ordered_add_comm_group&#45;&gt;add_comm_group -->
<g id="edge754" class="edge">
<title>ordered_add_comm_group&#45;&gt;add_comm_group</title>
<g id="a_edge754"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_add_comm_group.to_add_comm_group" xlink:title="ordered_add_comm_group.to_add_comm_group">
<path fill="none" stroke="black" d="M9956.81,-2848.4C9903.91,-2833.4 9818.61,-2807.2 9748.01,-2776.5 9637.81,-2728.6 9625.61,-2682.7 9511.01,-2646.5 9382.81,-2606 8984.91,-2576.5 8817.41,-2565.6"/>
<polygon fill="black" stroke="black" points="8817.4,-2562.09 8807.21,-2565 8816.99,-2569.08 8817.4,-2562.09"/>
</a>
</g>
</g>
<!-- ordered_cancel_add_comm_monoid -->
<g id="node397" class="node">
<title>ordered_cancel_add_comm_monoid</title>
<g id="a_node397"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_cancel_add_comm_monoid" xlink:title="ordered_cancel_add_comm_monoid">
<polygon fill="none" stroke="black" points="10349.01,-2778 10083.01,-2778 10083.01,-2747 10349.01,-2747 10349.01,-2778"/>
<text text-anchor="middle" x="10216.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">ordered_cancel_add_comm_monoid</text>
</a>
</g>
</g>
<!-- ordered_add_comm_group&#45;&gt;ordered_cancel_add_comm_monoid -->
<g id="edge756" class="edge">
<title>ordered_add_comm_group&#45;&gt;ordered_cancel_add_comm_monoid</title>
<g id="a_edge756"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_add_comm_group.to_ordered_cancel_add_comm_monoid" xlink:title="ordered_add_comm_group.to_ordered_cancel_add_comm_monoid">
<path fill="none" stroke="black" d="M10036.01,-2848.4C10073.01,-2830.9 10137.01,-2800.3 10178.01,-2780.9"/>
<polygon fill="black" stroke="black" points="10179.5,-2784.07 10187.01,-2776.6 10176.48,-2777.75 10179.5,-2784.07"/>
</a>
</g>
</g>
<!-- linear_ordered_add_comm_monoid -->
<g id="node396" class="node">
<title>linear_ordered_add_comm_monoid</title>
<g id="a_node396"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_add_comm_monoid" xlink:title="linear_ordered_add_comm_monoid">
<polygon fill="none" stroke="black" points="11048.01,-2778 10782.01,-2778 10782.01,-2747 11048.01,-2747 11048.01,-2778"/>
<text text-anchor="middle" x="10915.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">linear_ordered_add_comm_monoid</text>
</a>
</g>
</g>
<!-- linear_ordered_cancel_add_comm_monoid&#45;&gt;linear_ordered_add_comm_monoid -->
<g id="edge757" class="edge">
<title>linear_ordered_cancel_add_comm_monoid&#45;&gt;linear_ordered_add_comm_monoid</title>
<g id="a_edge757"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_cancel_add_comm_monoid.to_linear_ordered_add_comm_monoid" xlink:title="linear_ordered_cancel_add_comm_monoid.to_linear_ordered_add_comm_monoid">
<path fill="none" stroke="black" d="M10632.01,-2848.4C10691.01,-2830.5 10796.01,-2798.9 10860.01,-2779.5"/>
<polygon fill="black" stroke="black" points="10861.38,-2782.75 10870.01,-2776.6 10859.43,-2776.02 10861.38,-2782.75"/>
</a>
</g>
</g>
<!-- linear_ordered_cancel_add_comm_monoid&#45;&gt;ordered_cancel_add_comm_monoid -->
<g id="edge758" class="edge">
<title>linear_ordered_cancel_add_comm_monoid&#45;&gt;ordered_cancel_add_comm_monoid</title>
<g id="a_edge758"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_cancel_add_comm_monoid.to_ordered_cancel_add_comm_monoid" xlink:title="linear_ordered_cancel_add_comm_monoid.to_ordered_cancel_add_comm_monoid">
<path fill="none" stroke="black" d="M10536.01,-2848.4C10469.01,-2830.4 10349.01,-2798.5 10277.01,-2779.2"/>
<polygon fill="black" stroke="black" points="10277.57,-2775.73 10267.01,-2776.6 10275.81,-2782.5 10277.57,-2775.73"/>
</a>
</g>
</g>
<!-- semi_normed_group&#45;&gt;has_norm -->
<g id="edge623" class="edge">
<title>semi_normed_group&#45;&gt;has_norm</title>
<g id="a_edge623"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semi_normed_group.to_has_norm" xlink:title="semi_normed_group.to_has_norm">
<path fill="none" stroke="black" d="M7033.71,-2747.4C7012.21,-2730.5 6975.11,-2701.4 6950.31,-2681.9"/>
<polygon fill="black" stroke="black" points="6952.52,-2679.18 6942.51,-2675.7 6948.16,-2684.66 6952.52,-2679.18"/>
</a>
</g>
</g>
<!-- semi_normed_group&#45;&gt;pseudo_metric_space -->
<g id="edge624" class="edge">
<title>semi_normed_group&#45;&gt;pseudo_metric_space</title>
<g id="a_edge624"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semi_normed_group.to_pseudo_metric_space" xlink:title="semi_normed_group.to_pseudo_metric_space">
<path fill="none" stroke="black" d="M7000.51,-2747.4C6933.21,-2729.4 6814.31,-2697.5 6742.31,-2678.2"/>
<polygon fill="black" stroke="black" points="6743.08,-2674.78 6732.51,-2675.6 6741.28,-2681.55 6743.08,-2674.78"/>
</a>
</g>
</g>
<!-- semi_normed_group&#45;&gt;add_comm_group -->
<g id="edge625" class="edge">
<title>semi_normed_group&#45;&gt;add_comm_group</title>
<g id="a_edge625"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semi_normed_group.to_add_comm_group" xlink:title="semi_normed_group.to_add_comm_group">
<path fill="none" stroke="black" d="M7087.01,-2747.5C7155.21,-2722.5 7308.21,-2669.7 7442.01,-2646.5 7976.11,-2553.8 8123.61,-2637.9 8666.61,-2574.4"/>
<polygon fill="black" stroke="black" points="8667.1,-2577.87 8676.61,-2573.2 8666.27,-2570.92 8667.1,-2577.87"/>
</a>
</g>
</g>
<!-- has_nnnorm -->
<g id="node333" class="node">
<title>has_nnnorm</title>
<g id="a_node333"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_nnnorm" xlink:title="has_nnnorm">
<polygon fill="none" stroke="black" points="7100.01,-2677 7002.01,-2677 7002.01,-2646 7100.01,-2646 7100.01,-2677"/>
<text text-anchor="middle" x="7051.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">has_nnnorm</text>
</a>
</g>
</g>
<!-- semi_normed_group&#45;&gt;has_nnnorm -->
<g id="edge626" class="edge">
<title>semi_normed_group&#45;&gt;has_nnnorm</title>
<g id="a_edge626"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semi_normed_group.to_has_nnnorm" xlink:title="semi_normed_group.to_has_nnnorm">
<path fill="none" stroke="black" d="M7051.01,-2747.2C7051.01,-2731.3 7051.01,-2705 7051.01,-2685.7"/>
<polygon fill="black" stroke="black" points="7054.51,-2685.6 7051.01,-2675.6 7047.51,-2685.6 7054.51,-2685.6"/>
</a>
</g>
</g>
<!-- add_cancel_comm_monoid -->
<g id="node335" class="node">
<title>add_cancel_comm_monoid</title>
<g id="a_node335"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_cancel_comm_monoid" xlink:title="add_cancel_comm_monoid">
<polygon fill="none" stroke="black" points="8336.51,-2475 8137.51,-2475 8137.51,-2444 8336.51,-2444 8336.51,-2475"/>
<text text-anchor="middle" x="8237.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">add_cancel_comm_monoid</text>
</a>
</g>
</g>
<!-- add_comm_group&#45;&gt;add_cancel_comm_monoid -->
<g id="edge629" class="edge">
<title>add_comm_group&#45;&gt;add_cancel_comm_monoid</title>
<g id="a_edge629"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_group.to_cancel_add_comm_monoid" xlink:title="add_comm_group.to_cancel_add_comm_monoid">
<path fill="none" stroke="black" d="M8676.81,-2546.2C8584.31,-2528.1 8415.51,-2495 8316.11,-2475.5"/>
<polygon fill="black" stroke="black" points="8316.61,-2472.03 8306.11,-2473.5 8315.23,-2478.89 8316.61,-2472.03"/>
</a>
</g>
</g>
<!-- add_comm_monoid -->
<g id="node336" class="node">
<title>add_comm_monoid</title>
<g id="a_node336"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_monoid" xlink:title="add_comm_monoid">
<polygon fill="none" stroke="black" points="8538.01,-2374 8398.01,-2374 8398.01,-2343 8538.01,-2343 8538.01,-2374"/>
<text text-anchor="middle" x="8468.01" y="-2354.8" font-family="Courier,monospace" font-size="14.00">add_comm_monoid</text>
</a>
</g>
</g>
<!-- add_comm_group&#45;&gt;add_comm_monoid -->
<g id="edge630" class="edge">
<title>add_comm_group&#45;&gt;add_comm_monoid</title>
<g id="a_edge630"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_group.to_add_comm_monoid" xlink:title="add_comm_group.to_add_comm_monoid">
<path fill="none" stroke="black" d="M8676.81,-2545.7C8575.61,-2524.7 8391.21,-2485.2 8382.01,-2473.5 8356.01,-2440.6 8401.71,-2401.2 8435.91,-2378.3"/>
<polygon fill="black" stroke="black" points="8438.22,-2380.97 8444.71,-2372.6 8434.42,-2375.1 8438.22,-2380.97"/>
</a>
</g>
</g>
<!-- add_comm_group&#45;&gt;lattice_ordered_comm_group.has_zero_lattice_has_neg_part -->
<g id="edge631" class="edge">
<title>add_comm_group&#45;&gt;lattice_ordered_comm_group.has_zero_lattice_has_neg_part</title>
<g id="a_edge631"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_zero_lattice_has_neg_part" xlink:title="lattice_ordered_comm_group.has_zero_lattice_has_neg_part">
<path fill="none" stroke="black" d="M8807.11,-2550.5C8898.21,-2537.9 9068.41,-2511.5 9210.01,-2473.5 9246.91,-2463.6 9253.51,-2452.2 9291.01,-2444.5 9807.91,-2338.5 9950.61,-2421.2 10476.01,-2372.5 10512.01,-2369.1 10555.01,-2363.2 10574.01,-2360.5"/>
<polygon fill="black" stroke="black" points="10574.64,-2363.94 10584.01,-2359 10573.61,-2357.02 10574.64,-2363.94"/>
</a>
</g>
</g>
<!-- add_comm_group&#45;&gt;lattice_ordered_comm_group.has_zero_lattice_has_pos_part -->
<g id="edge632" class="edge">
<title>add_comm_group&#45;&gt;lattice_ordered_comm_group.has_zero_lattice_has_pos_part</title>
<g id="a_edge632"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_zero_lattice_has_pos_part" xlink:title="lattice_ordered_comm_group.has_zero_lattice_has_pos_part">
<path fill="none" stroke="black" d="M8807.01,-2554.5C8907.41,-2546.3 9105.11,-2524.6 9265.01,-2473.5 9292.81,-2464.6 9295.71,-2451.9 9324.01,-2444.5 9601.11,-2371.9 10326.01,-2398.8 10611.01,-2372.5 10646.01,-2369.3 10687.01,-2363.4 10706.01,-2360.6"/>
<polygon fill="black" stroke="black" points="10706.69,-2364.04 10716.01,-2359 10705.59,-2357.12 10706.69,-2364.04"/>
</a>
</g>
</g>
<!-- add_group -->
<g id="node339" class="node">
<title>add_group</title>
<g id="a_node339"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_group" xlink:title="add_group">
<polygon fill="none" stroke="black" points="8481.01,-2475 8391.01,-2475 8391.01,-2444 8481.01,-2444 8481.01,-2475"/>
<text text-anchor="middle" x="8436.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">add_group</text>
</a>
</g>
</g>
<!-- add_comm_group&#45;&gt;add_group -->
<g id="edge633" class="edge">
<title>add_comm_group&#45;&gt;add_group</title>
<g id="a_edge633"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_group.to_add_group" xlink:title="add_comm_group.to_add_group">
<path fill="none" stroke="black" d="M8700.11,-2545.4C8644.71,-2527.5 8547.31,-2496 8487.51,-2476.7"/>
<polygon fill="black" stroke="black" points="8488.51,-2473.34 8477.91,-2473.6 8486.35,-2480 8488.51,-2473.34"/>
</a>
</g>
</g>
<!-- subtraction_comm_monoid -->
<g id="node340" class="node">
<title>subtraction_comm_monoid</title>
<g id="a_node340"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/subtraction_comm_monoid" xlink:title="subtraction_comm_monoid">
<polygon fill="none" stroke="black" points="8703.51,-2475 8496.51,-2475 8496.51,-2444 8703.51,-2444 8703.51,-2475"/>
<text text-anchor="middle" x="8600.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">subtraction_comm_monoid</text>
</a>
</g>
</g>
<!-- add_comm_group&#45;&gt;subtraction_comm_monoid -->
<g id="edge634" class="edge">
<title>add_comm_group&#45;&gt;subtraction_comm_monoid</title>
<g id="a_edge634"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_group.to_division_add_comm_monoid" xlink:title="add_comm_group.to_division_add_comm_monoid">
<path fill="none" stroke="black" d="M8722.61,-2545.4C8698.21,-2528.4 8656.11,-2499.1 8628.21,-2479.7"/>
<polygon fill="black" stroke="black" points="8629.9,-2476.61 8619.71,-2473.7 8625.87,-2482.33 8629.9,-2476.61"/>
</a>
</g>
</g>
<!-- linear_ordered_semiring&#45;&gt;nontrivial -->
<g id="edge736" class="edge">
<title>linear_ordered_semiring&#45;&gt;nontrivial</title>
<g id="a_edge736"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_semiring.to_nontrivial" xlink:title="linear_ordered_semiring.to_nontrivial">
<path fill="none" stroke="black" d="M10316.01,-2949.4C10306.01,-2926.6 10289.01,-2880.1 10309.01,-2848.5 10336.01,-2806.4 10389.01,-2784.6 10431.01,-2773.6"/>
<polygon fill="black" stroke="black" points="10432.11,-2776.94 10441.01,-2771.2 10430.47,-2770.13 10432.11,-2776.94"/>
</a>
</g>
</g>
<!-- ordered_semiring -->
<g id="node395" class="node">
<title>ordered_semiring</title>
<g id="a_node395"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_semiring" xlink:title="ordered_semiring">
<polygon fill="none" stroke="black" points="9452.01,-2878 9304.01,-2878 9304.01,-2847 9452.01,-2847 9452.01,-2878"/>
<text text-anchor="middle" x="9378.01" y="-2858.8" font-family="Courier,monospace" font-size="14.00">ordered_semiring</text>
</a>
</g>
</g>
<!-- linear_ordered_semiring&#45;&gt;ordered_semiring -->
<g id="edge737" class="edge">
<title>linear_ordered_semiring&#45;&gt;ordered_semiring</title>
<g id="a_edge737"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_semiring.to_ordered_semiring" xlink:title="linear_ordered_semiring.to_ordered_semiring">
<path fill="none" stroke="black" d="M10221.01,-2950.5C10218.01,-2950.2 10215.01,-2949.8 10212.01,-2949.5 9895.51,-2914.3 9815.71,-2911.2 9499.01,-2877.5 9486.91,-2876.2 9474.11,-2874.8 9461.61,-2873.4"/>
<polygon fill="black" stroke="black" points="9461.94,-2869.91 9451.61,-2872.3 9461.17,-2876.87 9461.94,-2869.91"/>
</a>
</g>
</g>
<!-- linear_ordered_semiring&#45;&gt;linear_ordered_add_comm_monoid -->
<g id="edge738" class="edge">
<title>linear_ordered_semiring&#45;&gt;linear_ordered_add_comm_monoid</title>
<g id="a_edge738"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_semiring.to_linear_ordered_add_comm_monoid" xlink:title="linear_ordered_semiring.to_linear_ordered_add_comm_monoid">
<path fill="none" stroke="black" d="M10330.01,-2949.4C10343.01,-2924.8 10375.01,-2873.2 10418.01,-2848.5 10477.01,-2814.3 10649.01,-2790 10774.01,-2776.3"/>
<polygon fill="black" stroke="black" points="10774.46,-2779.77 10784.01,-2775.2 10773.69,-2772.81 10774.46,-2779.77"/>
</a>
</g>
</g>
<!-- linear_ordered_ring&#45;&gt;linear_order -->
<g id="edge731" class="edge">
<title>linear_ordered_ring&#45;&gt;linear_order</title>
<g id="a_edge731"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_ring.to_linear_order" xlink:title="linear_ordered_ring.to_linear_order">
<path fill="none" stroke="black" d="M10474.01,-3061.9C10770.01,-3054.4 11734.01,-3026.2 11779.01,-2978.5 11788.01,-2969.1 11783.01,-2961.8 11779.01,-2949.5 11777.01,-2941.8 11639.01,-2750.5 11591.01,-2684.3"/>
<polygon fill="black" stroke="black" points="11593.64,-2681.95 11585.01,-2675.8 11587.92,-2685.99 11593.64,-2681.95"/>
</a>
</g>
</g>
<!-- linear_ordered_ring&#45;&gt;linear_ordered_add_comm_group -->
<g id="edge732" class="edge">
<title>linear_ordered_ring&#45;&gt;linear_ordered_add_comm_group</title>
<g id="a_edge732"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_ring.to_linear_ordered_add_comm_group" xlink:title="linear_ordered_ring.to_linear_ordered_add_comm_group">
<path fill="none" stroke="black" d="M10465.01,-3050.5C10570.01,-3032.2 10757.01,-2999.5 10866.01,-2980.3"/>
<polygon fill="black" stroke="black" points="10866.74,-2983.73 10876.01,-2978.6 10865.57,-2976.83 10866.74,-2983.73"/>
</a>
</g>
</g>
<!-- linear_ordered_ring&#45;&gt;linear_ordered_semiring -->
<g id="edge734" class="edge">
<title>linear_ordered_ring&#45;&gt;linear_ordered_semiring</title>
<g id="a_edge734"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_ring.to_linear_ordered_semiring" xlink:title="linear_ordered_ring.to_linear_ordered_semiring">
<path fill="none" stroke="black" d="M10379.01,-3050.2C10368.01,-3033.9 10350.01,-3006.5 10338.01,-2987.1"/>
<polygon fill="black" stroke="black" points="10340.64,-2984.75 10332.01,-2978.6 10334.92,-2988.79 10340.64,-2984.75"/>
</a>
</g>
</g>
<!-- linear_ordered_ring&#45;&gt;nontrivial -->
<g id="edge733" class="edge">
<title>linear_ordered_ring&#45;&gt;nontrivial</title>
<g id="a_edge733"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_ring.to_nontrivial" xlink:title="linear_ordered_ring.to_nontrivial">
<path fill="none" stroke="black" d="M10398.01,-3050.4C10409.01,-3034.2 10427.01,-3006 10434.01,-2978.5 10448.01,-2921.4 10386.01,-2903.2 10408.01,-2848.5 10419.01,-2821.6 10443.01,-2798.4 10462.01,-2782.9"/>
<polygon fill="black" stroke="black" points="10464.32,-2785.54 10470.01,-2776.6 10459.99,-2780.04 10464.32,-2785.54"/>
</a>
</g>
</g>
<!-- ordered_ring -->
<g id="node394" class="node">
<title>ordered_ring</title>
<g id="a_node394"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_ring" xlink:title="ordered_ring">
<polygon fill="none" stroke="black" points="9384.51,-2979 9269.51,-2979 9269.51,-2948 9384.51,-2948 9384.51,-2979"/>
<text text-anchor="middle" x="9327.01" y="-2959.8" font-family="Courier,monospace" font-size="14.00">ordered_ring</text>
</a>
</g>
</g>
<!-- linear_ordered_ring&#45;&gt;ordered_ring -->
<g id="edge735" class="edge">
<title>linear_ordered_ring&#45;&gt;ordered_ring</title>
<g id="a_edge735"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_ring.to_ordered_ring" xlink:title="linear_ordered_ring.to_ordered_ring">
<path fill="none" stroke="black" d="M10302.01,-3060C10131.01,-3051.3 9735.41,-3027.4 9394.21,-2978.6"/>
<polygon fill="black" stroke="black" points="9394.62,-2975.12 9384.21,-2977.1 9393.58,-2982.04 9394.62,-2975.12"/>
</a>
</g>
</g>
<!-- ordered_comm_ring&#45;&gt;comm_ring -->
<g id="edge1359" class="edge">
<title>ordered_comm_ring&#45;&gt;comm_ring</title>
<g id="a_edge1359"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_comm_ring.to_comm_ring" xlink:title="ordered_comm_ring.to_comm_ring">
<path fill="none" stroke="black" d="M8375.61,-3050.4C8311.91,-3032.2 8198.81,-2999.9 8131.61,-2980.6"/>
<polygon fill="black" stroke="black" points="8132.19,-2977.13 8121.61,-2977.8 8130.3,-2983.87 8132.19,-2977.13"/>
</a>
</g>
</g>
<!-- ordered_comm_ring&#45;&gt;ordered_ring -->
<g id="edge1357" class="edge">
<title>ordered_comm_ring&#45;&gt;ordered_ring</title>
<g id="a_edge1357"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_comm_ring.to_ordered_ring" xlink:title="ordered_comm_ring.to_ordered_ring">
<path fill="none" stroke="black" d="M8500.81,-3051.7C8503.91,-3051.3 8507.01,-3050.9 8510.01,-3050.5 8839.51,-3009.2 8927.71,-3027.8 9259.91,-2978.6"/>
<polygon fill="black" stroke="black" points="9260.45,-2982.06 9269.81,-2977.1 9259.4,-2975.14 9260.45,-2982.06"/>
</a>
</g>
</g>
<!-- ordered_comm_semiring -->
<g id="node484" class="node">
<title>ordered_comm_semiring</title>
<g id="a_node484"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_comm_semiring" xlink:title="ordered_comm_semiring">
<polygon fill="none" stroke="black" points="8533.01,-2979 8343.01,-2979 8343.01,-2948 8533.01,-2948 8533.01,-2979"/>
<text text-anchor="middle" x="8438.01" y="-2959.8" font-family="Courier,monospace" font-size="14.00">ordered_comm_semiring</text>
</a>
</g>
</g>
<!-- ordered_comm_ring&#45;&gt;ordered_comm_semiring -->
<g id="edge1358" class="edge">
<title>ordered_comm_ring&#45;&gt;ordered_comm_semiring</title>
<g id="a_edge1358"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_comm_ring.to_ordered_comm_semiring" xlink:title="ordered_comm_ring.to_ordered_comm_semiring">
<path fill="none" stroke="black" d="M8425.11,-3050.2C8427.51,-3034.3 8431.51,-3008 8434.41,-2988.7"/>
<polygon fill="black" stroke="black" points="8437.91,-2989.01 8435.91,-2978.6 8430.98,-2987.98 8437.91,-2989.01"/>
</a>
</g>
</g>
<!-- order_closed_topology -->
<g id="node165" class="node">
<title>order_closed_topology</title>
<g id="a_node165"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/order_closed_topology" xlink:title="order_closed_topology">
<polygon fill="none" stroke="black" points="12365.01,-1566 12175.01,-1566 12175.01,-1535 12365.01,-1535 12365.01,-1566"/>
<text text-anchor="middle" x="12270.01" y="-1546.8" font-family="Courier,monospace" font-size="14.00">order_closed_topology</text>
</a>
</g>
</g>
<!-- order_closed_topology&#45;&gt;t2_space -->
<g id="edge313" class="edge">
<title>order_closed_topology&#45;&gt;t2_space</title>
<g id="a_edge313"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/order_closed_topology.to_t2_space" xlink:title="order_closed_topology.to_t2_space">
<path fill="none" stroke="black" d="M12364.01,-1536.2C12367.01,-1536 12370.01,-1535.7 12373.01,-1535.5 13599.01,-1439.5 13910.01,-1529.6 15138.01,-1463.5 15176.01,-1461.4 15220.01,-1457.9 15252.01,-1454.9"/>
<polygon fill="black" stroke="black" points="15252.37,-1458.38 15262.01,-1454 15251.74,-1451.41 15252.37,-1458.38"/>
</a>
</g>
</g>
<!-- nhds_within_Icc_is_measurably_generated -->
<g id="node166" class="node">
<title>nhds_within_Icc_is_measurably_generated</title>
<g id="a_node166"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Icc_is_measurably_generated" xlink:title="nhds_within_Icc_is_measurably_generated">
<ellipse fill="black" stroke="black" cx="12252.01" cy="-1448.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- order_closed_topology&#45;&gt;nhds_within_Icc_is_measurably_generated -->
<g id="edge314" class="edge">
<title>order_closed_topology&#45;&gt;nhds_within_Icc_is_measurably_generated</title>
<g id="a_edge314"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Icc_is_measurably_generated" xlink:title="nhds_within_Icc_is_measurably_generated">
<path fill="none" stroke="black" d="M12267.01,-1535.2C12264.01,-1515.1 12257.01,-1477.9 12254.01,-1460.1"/>
<polygon fill="black" stroke="black" points="12257.42,-1459.31 12252.01,-1450.2 12250.56,-1460.7 12257.42,-1459.31"/>
</a>
</g>
</g>
<!-- nhds_within_Ici_is_measurably_generated -->
<g id="node167" class="node">
<title>nhds_within_Ici_is_measurably_generated</title>
<g id="a_node167"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Ici_is_measurably_generated" xlink:title="nhds_within_Ici_is_measurably_generated">
<ellipse fill="black" stroke="black" cx="12270.01" cy="-1448.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- order_closed_topology&#45;&gt;nhds_within_Ici_is_measurably_generated -->
<g id="edge315" class="edge">
<title>order_closed_topology&#45;&gt;nhds_within_Ici_is_measurably_generated</title>
<g id="a_edge315"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Ici_is_measurably_generated" xlink:title="nhds_within_Ici_is_measurably_generated">
<path fill="none" stroke="black" d="M12270.01,-1535.2C12270.01,-1515.2 12270.01,-1478.3 12270.01,-1460.4"/>
<polygon fill="black" stroke="black" points="12273.51,-1460.2 12270.01,-1450.2 12266.51,-1460.2 12273.51,-1460.2"/>
</a>
</g>
</g>
<!-- at_top_is_measurably_generated -->
<g id="node168" class="node">
<title>at_top_is_measurably_generated</title>
<g id="a_node168"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/at_top_is_measurably_generated" xlink:title="at_top_is_measurably_generated">
<ellipse fill="black" stroke="black" cx="12288.01" cy="-1448.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- order_closed_topology&#45;&gt;at_top_is_measurably_generated -->
<g id="edge316" class="edge">
<title>order_closed_topology&#45;&gt;at_top_is_measurably_generated</title>
<g id="a_edge316"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/at_top_is_measurably_generated" xlink:title="at_top_is_measurably_generated">
<path fill="none" stroke="black" d="M12273.01,-1535.2C12276.01,-1515.1 12283.01,-1477.9 12286.01,-1460.1"/>
<polygon fill="black" stroke="black" points="12289.46,-1460.7 12288.01,-1450.2 12282.6,-1459.31 12289.46,-1460.7"/>
</a>
</g>
</g>
<!-- at_bot_is_measurably_generated -->
<g id="node169" class="node">
<title>at_bot_is_measurably_generated</title>
<g id="a_node169"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/at_bot_is_measurably_generated" xlink:title="at_bot_is_measurably_generated">
<ellipse fill="black" stroke="black" cx="12324.01" cy="-1448.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- order_closed_topology&#45;&gt;at_bot_is_measurably_generated -->
<g id="edge317" class="edge">
<title>order_closed_topology&#45;&gt;at_bot_is_measurably_generated</title>
<g id="a_edge317"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/at_bot_is_measurably_generated" xlink:title="at_bot_is_measurably_generated">
<path fill="none" stroke="black" d="M12278.01,-1535.2C12289.01,-1514.6 12310.01,-1476.4 12319.01,-1459"/>
<polygon fill="black" stroke="black" points="12322.12,-1460.62 12324.01,-1450.2 12316.03,-1457.17 12322.12,-1460.62"/>
</a>
</g>
</g>
<!-- nhds_within_Ioi_is_measurably_generated -->
<g id="node170" class="node">
<title>nhds_within_Ioi_is_measurably_generated</title>
<g id="a_node170"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Ioi_is_measurably_generated" xlink:title="nhds_within_Ioi_is_measurably_generated">
<ellipse fill="black" stroke="black" cx="12198.01" cy="-1448.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- order_closed_topology&#45;&gt;nhds_within_Ioi_is_measurably_generated -->
<g id="edge318" class="edge">
<title>order_closed_topology&#45;&gt;nhds_within_Ioi_is_measurably_generated</title>
<g id="a_edge318"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Ioi_is_measurably_generated" xlink:title="nhds_within_Ioi_is_measurably_generated">
<path fill="none" stroke="black" d="M12260.01,-1535.2C12247.01,-1518.4 12225.01,-1489.2 12207.01,-1463.5 12206.01,-1461.9 12205.01,-1460.3 12204.01,-1458.6"/>
<polygon fill="black" stroke="black" points="12206.64,-1456.25 12198.01,-1450.1 12200.92,-1460.29 12206.64,-1456.25"/>
</a>
</g>
</g>
<!-- nhds_within_Iio_is_measurably_generated -->
<g id="node171" class="node">
<title>nhds_within_Iio_is_measurably_generated</title>
<g id="a_node171"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Iio_is_measurably_generated" xlink:title="nhds_within_Iio_is_measurably_generated">
<ellipse fill="black" stroke="black" cx="12306.01" cy="-1448.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- order_closed_topology&#45;&gt;nhds_within_Iio_is_measurably_generated -->
<g id="edge319" class="edge">
<title>order_closed_topology&#45;&gt;nhds_within_Iio_is_measurably_generated</title>
<g id="a_edge319"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Iio_is_measurably_generated" xlink:title="nhds_within_Iio_is_measurably_generated">
<path fill="none" stroke="black" d="M12275.01,-1535.2C12282.01,-1515 12296.01,-1477.5 12302.01,-1459.8"/>
<polygon fill="black" stroke="black" points="12305.4,-1460.78 12306.01,-1450.2 12298.94,-1458.08 12305.4,-1460.78"/>
</a>
</g>
</g>
<!-- nhds_within_interval_is_measurably_generated -->
<g id="node172" class="node">
<title>nhds_within_interval_is_measurably_generated</title>
<g id="a_node172"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_interval_is_measurably_generated" xlink:title="nhds_within_interval_is_measurably_generated">
<ellipse fill="black" stroke="black" cx="12216.01" cy="-1448.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- order_closed_topology&#45;&gt;nhds_within_interval_is_measurably_generated -->
<g id="edge320" class="edge">
<title>order_closed_topology&#45;&gt;nhds_within_interval_is_measurably_generated</title>
<g id="a_edge320"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_interval_is_measurably_generated" xlink:title="nhds_within_interval_is_measurably_generated">
<path fill="none" stroke="black" d="M12262.01,-1535.2C12251.01,-1514.6 12230.01,-1476.4 12221.01,-1459"/>
<polygon fill="black" stroke="black" points="12224,-1457.17 12216.01,-1450.2 12217.91,-1460.62 12224,-1457.17"/>
</a>
</g>
</g>
<!-- nhds_within_Iic_is_measurably_generated -->
<g id="node173" class="node">
<title>nhds_within_Iic_is_measurably_generated</title>
<g id="a_node173"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Iic_is_measurably_generated" xlink:title="nhds_within_Iic_is_measurably_generated">
<ellipse fill="black" stroke="black" cx="12234.01" cy="-1448.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- order_closed_topology&#45;&gt;nhds_within_Iic_is_measurably_generated -->
<g id="edge321" class="edge">
<title>order_closed_topology&#45;&gt;nhds_within_Iic_is_measurably_generated</title>
<g id="a_edge321"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Iic_is_measurably_generated" xlink:title="nhds_within_Iic_is_measurably_generated">
<path fill="none" stroke="black" d="M12265.01,-1535.2C12258.01,-1515 12244.01,-1477.5 12238.01,-1459.8"/>
<polygon fill="black" stroke="black" points="12241.09,-1458.08 12234.01,-1450.2 12234.63,-1460.78 12241.09,-1458.08"/>
</a>
</g>
</g>
<!-- filter.is_measurably_generated -->
<g id="node174" class="node">
<title>filter.is_measurably_generated</title>
<g id="a_node174"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.is_measurably_generated" xlink:title="filter.is_measurably_generated">
<polygon fill="none" stroke="black" points="12280.01,-1363 12014.01,-1363 12014.01,-1332 12280.01,-1332 12280.01,-1363"/>
<text text-anchor="middle" x="12147.01" y="-1343.8" font-family="Courier,monospace" font-size="14.00">filter.is_measurably_generated</text>
</a>
</g>
</g>
<!-- nhds_within_Icc_is_measurably_generated&#45;&gt;filter.is_measurably_generated -->
<g id="edge322" class="edge">
<title>nhds_within_Icc_is_measurably_generated&#45;&gt;filter.is_measurably_generated</title>
<g id="a_edge322"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Icc_is_measurably_generated" xlink:title="nhds_within_Icc_is_measurably_generated">
<path fill="none" stroke="black" d="M12252.01,-1447.9C12251.01,-1447 12247.01,-1439.6 12243.01,-1434.5 12222.01,-1409.8 12193.01,-1385.3 12173.01,-1368.9"/>
<polygon fill="black" stroke="black" points="12175.04,-1366.04 12165.01,-1362.6 12170.7,-1371.54 12175.04,-1366.04"/>
</a>
</g>
</g>
<!-- nhds_within_Ici_is_measurably_generated&#45;&gt;filter.is_measurably_generated -->
<g id="edge323" class="edge">
<title>nhds_within_Ici_is_measurably_generated&#45;&gt;filter.is_measurably_generated</title>
<g id="a_edge323"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Ici_is_measurably_generated" xlink:title="nhds_within_Ici_is_measurably_generated">
<path fill="none" stroke="black" d="M12270.01,-1447.9C12269.01,-1447 12266.01,-1439.4 12261.01,-1434.5 12236.01,-1408.2 12203.01,-1384.1 12178.01,-1368.2"/>
<polygon fill="black" stroke="black" points="12180.26,-1365.49 12170.01,-1362.8 12176.34,-1371.3 12180.26,-1365.49"/>
</a>
</g>
</g>
<!-- at_top_is_measurably_generated&#45;&gt;filter.is_measurably_generated -->
<g id="edge324" class="edge">
<title>at_top_is_measurably_generated&#45;&gt;filter.is_measurably_generated</title>
<g id="a_edge324"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/at_top_is_measurably_generated" xlink:title="at_top_is_measurably_generated">
<path fill="none" stroke="black" d="M12288.01,-1447.9C12288.01,-1447 12284.01,-1439.2 12279.01,-1434.5 12251.01,-1406.6 12212.01,-1382.8 12184.01,-1367.4"/>
<polygon fill="black" stroke="black" points="12185.48,-1364.22 12175.01,-1362.6 12182.19,-1370.39 12185.48,-1364.22"/>
</a>
</g>
</g>
<!-- at_bot_is_measurably_generated&#45;&gt;filter.is_measurably_generated -->
<g id="edge325" class="edge">
<title>at_bot_is_measurably_generated&#45;&gt;filter.is_measurably_generated</title>
<g id="a_edge325"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/at_bot_is_measurably_generated" xlink:title="at_bot_is_measurably_generated">
<path fill="none" stroke="black" d="M12324.01,-1447.9C12324.01,-1446.9 12320.01,-1439 12315.01,-1434.5 12280.01,-1403.6 12232.01,-1380.6 12197.01,-1366.4"/>
<polygon fill="black" stroke="black" points="12197.61,-1362.88 12187.01,-1362.6 12195.12,-1369.42 12197.61,-1362.88"/>
</a>
</g>
</g>
<!-- nhds_within_Ioi_is_measurably_generated&#45;&gt;filter.is_measurably_generated -->
<g id="edge326" class="edge">
<title>nhds_within_Ioi_is_measurably_generated&#45;&gt;filter.is_measurably_generated</title>
<g id="a_edge326"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Ioi_is_measurably_generated" xlink:title="nhds_within_Ioi_is_measurably_generated">
<path fill="none" stroke="black" d="M12198.01,-1447.9C12197.01,-1445.9 12173.01,-1400.3 12159.01,-1371.7"/>
<polygon fill="black" stroke="black" points="12161.96,-1369.8 12154.01,-1362.8 12155.86,-1373.23 12161.96,-1369.8"/>
</a>
</g>
</g>
<!-- nhds_within_Iio_is_measurably_generated&#45;&gt;filter.is_measurably_generated -->
<g id="edge327" class="edge">
<title>nhds_within_Iio_is_measurably_generated&#45;&gt;filter.is_measurably_generated</title>
<g id="a_edge327"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Iio_is_measurably_generated" xlink:title="nhds_within_Iio_is_measurably_generated">
<path fill="none" stroke="black" d="M12306.01,-1447.9C12306.01,-1446.9 12302.01,-1439.1 12297.01,-1434.5 12265.01,-1404.9 12221.01,-1381.5 12189.01,-1366.7"/>
<polygon fill="black" stroke="black" points="12190.56,-1363.56 12180.01,-1362.5 12187.6,-1369.9 12190.56,-1363.56"/>
</a>
</g>
</g>
<!-- nhds_within_interval_is_measurably_generated&#45;&gt;filter.is_measurably_generated -->
<g id="edge328" class="edge">
<title>nhds_within_interval_is_measurably_generated&#45;&gt;filter.is_measurably_generated</title>
<g id="a_edge328"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_interval_is_measurably_generated" xlink:title="nhds_within_interval_is_measurably_generated">
<path fill="none" stroke="black" d="M12216.01,-1447.9C12215.01,-1447.1 12211.01,-1440.1 12207.01,-1434.5 12192.01,-1412.7 12175.01,-1388 12163.01,-1370.8"/>
<polygon fill="black" stroke="black" points="12165.74,-1368.6 12157.01,-1362.6 12160.09,-1372.74 12165.74,-1368.6"/>
</a>
</g>
</g>
<!-- nhds_within_Iic_is_measurably_generated&#45;&gt;filter.is_measurably_generated -->
<g id="edge329" class="edge">
<title>nhds_within_Iic_is_measurably_generated&#45;&gt;filter.is_measurably_generated</title>
<g id="a_edge329"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Iic_is_measurably_generated" xlink:title="nhds_within_Iic_is_measurably_generated">
<path fill="none" stroke="black" d="M12234.01,-1447.9C12233.01,-1447 12229.01,-1439.8 12225.01,-1434.5 12207.01,-1411.5 12184.01,-1387.1 12168.01,-1370.3"/>
<polygon fill="black" stroke="black" points="12170.33,-1367.65 12161.01,-1362.6 12165.15,-1372.35 12170.33,-1367.65"/>
</a>
</g>
</g>
<!-- filter.inf_is_measurably_generated -->
<g id="node175" class="node">
<title>filter.inf_is_measurably_generated</title>
<g id="a_node175"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.inf_is_measurably_generated" xlink:title="filter.inf_is_measurably_generated">
<ellipse fill="black" stroke="black" cx="11934.01" cy="-1246.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- filter.is_measurably_generated&#45;&gt;filter.inf_is_measurably_generated -->
<g id="edge330" class="edge">
<title>filter.is_measurably_generated&#45;&gt;filter.inf_is_measurably_generated</title>
<g id="a_edge330"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.inf_is_measurably_generated" xlink:title="filter.inf_is_measurably_generated">
<path fill="none" stroke="black" d="M12077.01,-1333.4C12030.01,-1320.4 11969.01,-1297.5 11925.01,-1261.5 11921.01,-1258.2 11918.01,-1252.5 11924.01,-1249.7"/>
<polygon fill="black" stroke="black" points="11924.74,-1253.13 11934.01,-1248 11923.57,-1246.23 11924.74,-1253.13"/>
</a>
</g>
</g>
<!-- filter.is_measurably_generated&#45;&gt;filter.inf_is_measurably_generated -->
<g id="edge331" class="edge">
<title>filter.is_measurably_generated&#45;&gt;filter.inf_is_measurably_generated</title>
<g id="a_edge331"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.inf_is_measurably_generated" xlink:title="filter.inf_is_measurably_generated">
<path fill="none" stroke="black" d="M12092.01,-1333.4C12048.01,-1320.4 11987.01,-1297.5 11943.01,-1261.5 11941.01,-1260.2 11940.01,-1258.6 11939.01,-1256.9"/>
<polygon fill="black" stroke="black" points="11942,-1255.07 11934.01,-1248.1 11935.91,-1258.52 11942,-1255.07"/>
</a>
</g>
</g>
<!-- filter.inf_is_measurably_generated&#45;&gt;filter.is_measurably_generated -->
<g id="edge1464" class="edge">
<title>filter.inf_is_measurably_generated&#45;&gt;filter.is_measurably_generated</title>
<g id="a_edge1464"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.inf_is_measurably_generated" xlink:title="filter.inf_is_measurably_generated">
<path fill="none" stroke="black" d="M11934.01,-1248C11952.01,-1248.1 11955.01,-1256.9 11961.01,-1261.5 12001.01,-1294.8 12057.01,-1316.9 12097.01,-1330.2"/>
<polygon fill="black" stroke="black" points="12095.42,-1333.35 12106.01,-1333.4 12097.76,-1326.75 12095.42,-1333.35"/>
</a>
</g>
</g>
<!-- order_topology -->
<g id="node176" class="node">
<title>order_topology</title>
<g id="a_node176"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/order_topology" xlink:title="order_topology">
<polygon fill="none" stroke="black" points="12478.01,-2071 12346.01,-2071 12346.01,-2040 12478.01,-2040 12478.01,-2071"/>
<text text-anchor="middle" x="12412.01" y="-2051.8" font-family="Courier,monospace" font-size="14.00">order_topology</text>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;t3_space -->
<g id="edge332" class="edge">
<title>order_topology&#45;&gt;t3_space</title>
<g id="a_edge332"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/order_topology.t3_space" xlink:title="order_topology.t3_space">
<path fill="none" stroke="black" d="M12477.01,-2051.4C12809.01,-2038.1 14295.01,-1978.2 14342.01,-1968.5 14377.01,-1961.2 14383.01,-1947.2 14418.01,-1939.5 14670.01,-1884.9 15340.01,-1969.6 15577.01,-1867.5 15667.01,-1828.8 15729.01,-1721.6 15753.01,-1674.6"/>
<polygon fill="black" stroke="black" points="15756.27,-1675.95 15758.01,-1665.5 15750.13,-1672.58 15756.27,-1675.95"/>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;filter.tendsto_Ixx_class -->
<g id="edge333" class="edge">
<title>order_topology&#45;&gt;filter.tendsto_Ixx_class</title>
<g id="a_edge333"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/tendsto_Ico_class_nhds" xlink:title="tendsto_Ico_class_nhds">
<path fill="none" stroke="black" d="M12347.01,-2048.2C12188.01,-2032.9 11782.01,-1990.7 11581.01,-1968.7"/>
<polygon fill="black" stroke="black" points="11581.34,-1965.21 11571.01,-1967.6 11580.57,-1972.17 11581.34,-1965.21"/>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;filter.tendsto_Ixx_class -->
<g id="edge334" class="edge">
<title>order_topology&#45;&gt;filter.tendsto_Ixx_class</title>
<g id="a_edge334"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/tendsto_Icc_class_nhds" xlink:title="tendsto_Icc_class_nhds">
<path fill="none" stroke="black" d="M12347.01,-2047.6C12189.01,-2031.5 11782.01,-1989.1 11581.01,-1967.7"/>
<polygon fill="black" stroke="black" points="11581.34,-1964.21 11571.01,-1966.6 11580.57,-1971.17 11581.34,-1964.21"/>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;filter.tendsto_Ixx_class -->
<g id="edge335" class="edge">
<title>order_topology&#45;&gt;filter.tendsto_Ixx_class</title>
<g id="a_edge335"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/tendsto_Ioo_class_nhds" xlink:title="tendsto_Ioo_class_nhds">
<path fill="none" stroke="black" d="M12347.01,-2046.8C12188.01,-2029.9 11782.01,-1987.4 11581.01,-1966.7"/>
<polygon fill="black" stroke="black" points="11581.31,-1963.21 11571.01,-1965.7 11580.62,-1970.18 11581.31,-1963.21"/>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;filter.tendsto_Ixx_class -->
<g id="edge336" class="edge">
<title>order_topology&#45;&gt;filter.tendsto_Ixx_class</title>
<g id="a_edge336"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/tendsto_Ioc_class_nhds" xlink:title="tendsto_Ioc_class_nhds">
<path fill="none" stroke="black" d="M12347.01,-2046C12188.01,-2028.3 11783.01,-1985.9 11581.01,-1965.8"/>
<polygon fill="black" stroke="black" points="11581.31,-1962.31 11571.01,-1964.8 11580.62,-1969.28 11581.31,-1962.31"/>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;order_closed_topology -->
<g id="edge337" class="edge">
<title>order_topology&#45;&gt;order_closed_topology</title>
<g id="a_edge337"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/order_topology.to_order_closed_topology" xlink:title="order_topology.to_order_closed_topology">
<path fill="none" stroke="black" d="M12347.01,-2044.3C12269.01,-2031.2 12145.01,-2005.2 12117.01,-1968.5 12093.01,-1936.4 12110.01,-1888.8 12150.01,-1838.5 12189.01,-1789.6 12240.01,-1820.9 12271.01,-1766.5 12306.01,-1704.7 12289.01,-1616 12277.01,-1574.3"/>
<polygon fill="black" stroke="black" points="12280.29,-1573.04 12274.01,-1564.5 12273.59,-1575.09 12280.29,-1573.04"/>
</a>
</g>
</g>
<!-- topological_add_group -->
<g id="node177" class="node">
<title>topological_add_group</title>
<g id="a_node177"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_add_group" xlink:title="topological_add_group">
<polygon fill="none" stroke="black" points="12508.01,-1767 12318.01,-1767 12318.01,-1736 12508.01,-1736 12508.01,-1767"/>
<text text-anchor="middle" x="12413.01" y="-1747.8" font-family="Courier,monospace" font-size="14.00">topological_add_group</text>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;topological_add_group -->
<g id="edge338" class="edge">
<title>order_topology&#45;&gt;topological_add_group</title>
<g id="a_edge338"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_add_comm_group.topological_add_group" xlink:title="linear_ordered_add_comm_group.topological_add_group">
<path fill="none" stroke="black" d="M12347.01,-2043.1C12273.01,-2029.2 12159.01,-2002.9 12134.01,-1968.5 12065.01,-1874.6 12253.01,-1801.1 12354.01,-1769.6"/>
<polygon fill="black" stroke="black" points="12355.44,-1772.83 12364.01,-1766.6 12353.43,-1766.12 12355.44,-1772.83"/>
</a>
</g>
</g>
<!-- has_continuous_mul -->
<g id="node178" class="node">
<title>has_continuous_mul</title>
<g id="a_node178"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_mul" xlink:title="has_continuous_mul">
<polygon fill="none" stroke="black" points="13306.51,-1667 13141.51,-1667 13141.51,-1636 13306.51,-1636 13306.51,-1667"/>
<text text-anchor="middle" x="13224.01" y="-1647.8" font-family="Courier,monospace" font-size="14.00">has_continuous_mul</text>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;has_continuous_mul -->
<g id="edge339" class="edge">
<title>order_topology&#45;&gt;has_continuous_mul</title>
<g id="a_edge339"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_field.has_continuous_mul" xlink:title="linear_ordered_field.has_continuous_mul">
<path fill="none" stroke="black" d="M12477.01,-2052.3C12612.01,-2047.5 12917.01,-2030.1 12998.01,-1968.5 13087.01,-1900.5 13028.01,-1823.8 13099.01,-1737.5 13123.01,-1708.5 13159.01,-1685.2 13187.01,-1670.2"/>
<polygon fill="black" stroke="black" points="13188.77,-1673.23 13196.01,-1665.5 13185.53,-1667.03 13188.77,-1673.23"/>
</a>
</g>
</g>
<!-- compact_space -->
<g id="node179" class="node">
<title>compact_space</title>
<g id="a_node179"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/compact_space" xlink:title="compact_space">
<polygon fill="none" stroke="black" points="14333.51,-1970 14210.51,-1970 14210.51,-1939 14333.51,-1939 14333.51,-1970"/>
<text text-anchor="middle" x="14272.01" y="-1950.8" font-family="Courier,monospace" font-size="14.00">compact_space</text>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;compact_space -->
<g id="edge340" class="edge">
<title>order_topology&#45;&gt;compact_space</title>
<g id="a_edge340"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/compact_space_of_complete_linear_order" xlink:title="compact_space_of_complete_linear_order">
<path fill="none" stroke="black" d="M12477.01,-2051.5C12753.01,-2040.7 13826.01,-1997.6 14163.01,-1968.5 14175.01,-1967.4 14188.01,-1966.1 14201.01,-1964.6"/>
<polygon fill="black" stroke="black" points="14201.5,-1968.07 14211.01,-1963.4 14200.67,-1961.12 14201.5,-1968.07"/>
</a>
</g>
</g>
<!-- Inf_convergence_class -->
<g id="node180" class="node">
<title>Inf_convergence_class</title>
<g id="a_node180"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/Inf_convergence_class" xlink:title="Inf_convergence_class">
<polygon fill="none" stroke="black" points="12050.01,-1970 11860.01,-1970 11860.01,-1939 12050.01,-1939 12050.01,-1970"/>
<text text-anchor="middle" x="11955.01" y="-1950.8" font-family="Courier,monospace" font-size="14.00">Inf_convergence_class</text>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;Inf_convergence_class -->
<g id="edge341" class="edge">
<title>order_topology&#45;&gt;Inf_convergence_class</title>
<g id="a_edge341"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_order.Inf_convergence_class" xlink:title="linear_order.Inf_convergence_class">
<path fill="none" stroke="black" d="M12349.01,-2040.4C12265.01,-2022.2 12116.01,-1990 12028.01,-1970.7"/>
<polygon fill="black" stroke="black" points="12028.52,-1967.23 12018.01,-1968.6 12027.08,-1974.08 12028.52,-1967.23"/>
</a>
</g>
</g>
<!-- Sup_convergence_class -->
<g id="node181" class="node">
<title>Sup_convergence_class</title>
<g id="a_node181"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/Sup_convergence_class" xlink:title="Sup_convergence_class">
<polygon fill="none" stroke="black" points="12332.01,-1970 12142.01,-1970 12142.01,-1939 12332.01,-1939 12332.01,-1970"/>
<text text-anchor="middle" x="12237.01" y="-1950.8" font-family="Courier,monospace" font-size="14.00">Sup_convergence_class</text>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;Sup_convergence_class -->
<g id="edge342" class="edge">
<title>order_topology&#45;&gt;Sup_convergence_class</title>
<g id="a_edge342"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_order.Sup_convergence_class" xlink:title="linear_order.Sup_convergence_class">
<path fill="none" stroke="black" d="M12388.01,-2040.4C12357.01,-2023.1 12304.01,-1992.9 12270.01,-1973.5"/>
<polygon fill="black" stroke="black" points="12271.47,-1970.31 12261.01,-1968.6 12268.12,-1976.46 12271.47,-1970.31"/>
</a>
</g>
</g>
<!-- topological_division_ring -->
<g id="node182" class="node">
<title>topological_division_ring</title>
<g id="a_node182"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_division_ring" xlink:title="topological_division_ring">
<polygon fill="none" stroke="black" points="12991.01,-1970 12767.01,-1970 12767.01,-1939 12991.01,-1939 12991.01,-1970"/>
<text text-anchor="middle" x="12879.01" y="-1950.8" font-family="Courier,monospace" font-size="14.00">topological_division_ring</text>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;topological_division_ring -->
<g id="edge343" class="edge">
<title>order_topology&#45;&gt;topological_division_ring</title>
<g id="a_edge343"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_field.to_topological_division_ring" xlink:title="linear_ordered_field.to_topological_division_ring">
<path fill="none" stroke="black" d="M12476.01,-2040.4C12562.01,-2022.2 12714.01,-1989.9 12805.01,-1970.7"/>
<polygon fill="black" stroke="black" points="12805.95,-1974.08 12815.01,-1968.6 12804.51,-1967.23 12805.95,-1974.08"/>
</a>
</g>
</g>
<!-- nhds_within.filter.ne_bot -->
<g id="node183" class="node">
<title>nhds_within.filter.ne_bot</title>
<g id="a_node183"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within.filter.ne_bot" xlink:title="nhds_within.filter.ne_bot">
<ellipse fill="black" stroke="black" cx="13234.01" cy="-1954.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;nhds_within.filter.ne_bot -->
<g id="edge344" class="edge">
<title>order_topology&#45;&gt;nhds_within.filter.ne_bot</title>
<g id="a_edge344"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within.filter.ne_bot" xlink:title="nhds_within.filter.ne_bot">
<path fill="none" stroke="black" d="M12477.01,-2047.4C12606.01,-2034.1 12901.01,-2002.5 13149.01,-1968.5 13176.01,-1964.8 13208.01,-1959.5 13224.01,-1956.8"/>
<polygon fill="black" stroke="black" points="13224.79,-1960.22 13234.01,-1955 13223.55,-1953.33 13224.79,-1960.22"/>
</a>
</g>
</g>
<!-- compact_Icc_space -->
<g id="node184" class="node">
<title>compact_Icc_space</title>
<g id="a_node184"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/compact_Icc_space" xlink:title="compact_Icc_space">
<polygon fill="none" stroke="black" points="12712.51,-1970 12555.51,-1970 12555.51,-1939 12712.51,-1939 12712.51,-1970"/>
<text text-anchor="middle" x="12634.01" y="-1950.8" font-family="Courier,monospace" font-size="14.00">compact_Icc_space</text>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;compact_Icc_space -->
<g id="edge345" class="edge">
<title>order_topology&#45;&gt;compact_Icc_space</title>
<g id="a_edge345"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/conditionally_complete_linear_order.to_compact_Icc_space" xlink:title="conditionally_complete_linear_order.to_compact_Icc_space">
<path fill="none" stroke="black" d="M12442.01,-2040.4C12482.01,-2022.8 12551.01,-1992 12594.01,-1972.6"/>
<polygon fill="black" stroke="black" points="12596.03,-1975.56 12604.01,-1968.6 12593.43,-1969.06 12596.03,-1975.56"/>
</a>
</g>
</g>
<!-- nhds_within_Ioi_self_ne_bot -->
<g id="node185" class="node">
<title>nhds_within_Ioi_self_ne_bot</title>
<g id="a_node185"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Ioi_self_ne_bot" xlink:title="nhds_within_Ioi_self_ne_bot">
<ellipse fill="black" stroke="black" cx="13046.01" cy="-1954.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;nhds_within_Ioi_self_ne_bot -->
<g id="edge346" class="edge">
<title>order_topology&#45;&gt;nhds_within_Ioi_self_ne_bot</title>
<g id="a_edge346"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Ioi_self_ne_bot" xlink:title="nhds_within_Ioi_self_ne_bot">
<path fill="none" stroke="black" d="M12477.01,-2050.1C12616.01,-2041.1 12935.01,-2015.6 13032.01,-1968.5 13035.01,-1967.2 13037.01,-1965.1 13039.01,-1963"/>
<polygon fill="black" stroke="black" points="13042,-1964.91 13046.01,-1955.1 13036.76,-1960.26 13042,-1964.91"/>
</a>
</g>
</g>
<!-- ordered_connected_space -->
<g id="node186" class="node">
<title>ordered_connected_space</title>
<g id="a_node186"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_connected_space" xlink:title="ordered_connected_space">
<ellipse fill="black" stroke="black" cx="12349.01" cy="-1954.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;ordered_connected_space -->
<g id="edge347" class="edge">
<title>order_topology&#45;&gt;ordered_connected_space</title>
<g id="a_edge347"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_connected_space" xlink:title="ordered_connected_space">
<path fill="none" stroke="black" d="M12403.01,-2040.2C12390.01,-2019.5 12366.01,-1981 12355.01,-1963.8"/>
<polygon fill="black" stroke="black" points="12357.61,-1961.4 12349.01,-1955.2 12351.87,-1965.4 12357.61,-1961.4"/>
</a>
</g>
</g>
<!-- nhds_within_Iio_self_ne_bot -->
<g id="node187" class="node">
<title>nhds_within_Iio_self_ne_bot</title>
<g id="a_node187"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Iio_self_ne_bot" xlink:title="nhds_within_Iio_self_ne_bot">
<ellipse fill="black" stroke="black" cx="13140.01" cy="-1954.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- order_topology&#45;&gt;nhds_within_Iio_self_ne_bot -->
<g id="edge348" class="edge">
<title>order_topology&#45;&gt;nhds_within_Iio_self_ne_bot</title>
<g id="a_edge348"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Iio_self_ne_bot" xlink:title="nhds_within_Iio_self_ne_bot">
<path fill="none" stroke="black" d="M12477.01,-2045.9C12594.01,-2031.3 12844.01,-1999.3 13055.01,-1968.5 13082.01,-1964.6 13114.01,-1959.3 13130.01,-1956.7"/>
<polygon fill="black" stroke="black" points="13130.74,-1960.13 13140.01,-1955 13129.57,-1953.23 13130.74,-1960.13"/>
</a>
</g>
</g>
<!-- topological_add_group&#45;&gt;measure_theory.measure.is_add_haar_measure.has_no_atoms -->
<g id="edge349" class="edge">
<title>topological_add_group&#45;&gt;measure_theory.measure.is_add_haar_measure.has_no_atoms</title>
<g id="a_edge349"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_add_haar_measure.has_no_atoms" xlink:title="measure_theory.measure.is_add_haar_measure.has_no_atoms">
<path fill="none" stroke="black" d="M12507.01,-1741.4C12523.01,-1740 12539.01,-1738.6 12554.01,-1737.5 12633.01,-1731.7 13931.01,-1723.2 13986.01,-1665.5 13997.01,-1653.7 14004.01,-1405 13862.01,-1232.5 13819.01,-1180.3 13766.01,-1216.4 13728.01,-1160.5 13670.01,-1074.7 13697.01,-1010.3 13762.01,-929.48 13793.01,-890.58 13846.01,-859.88 13867.01,-848.62"/>
<polygon fill="black" stroke="black" points="13868.71,-851.68 13876.01,-844.01 13865.52,-845.45 13868.71,-851.68"/>
</a>
</g>
</g>
<!-- topological_add_group&#45;&gt;measure_theory.measure.regular_of_is_add_haar_measure -->
<g id="edge350" class="edge">
<title>topological_add_group&#45;&gt;measure_theory.measure.regular_of_is_add_haar_measure</title>
<g id="a_edge350"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular_of_is_add_haar_measure" xlink:title="measure_theory.measure.regular_of_is_add_haar_measure">
<path fill="none" stroke="black" d="M12507.01,-1741.1C12523.01,-1739.7 12539.01,-1738.4 12554.01,-1737.5 12689.01,-1729.1 14891.01,-1762.4 14985.01,-1665.5 15026.01,-1623.1 14934.01,-1638.6 14899.01,-1564.5 14875.01,-1512.1 14867.01,-1482.6 14899.01,-1434.5 14945.01,-1365.5 14997.01,-1400 15071.01,-1362.5 15171.01,-1311.9 15184.01,-1278.4 15286.01,-1232.5 15385.01,-1188 15514.01,-1157.4 15550.01,-1149.2"/>
<polygon fill="black" stroke="black" points="15551,-1152.57 15560.01,-1147 15549.5,-1145.73 15551,-1152.57"/>
</a>
</g>
</g>
<!-- topological_add_group&#45;&gt;measure_theory.measure.regular.neg -->
<g id="edge351" class="edge">
<title>topological_add_group&#45;&gt;measure_theory.measure.regular.neg</title>
<g id="a_edge351"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.neg" xlink:title="measure_theory.measure.regular.neg">
<path fill="none" stroke="black" d="M12507.01,-1741.1C12523.01,-1739.7 12539.01,-1738.4 12554.01,-1737.5 12687.01,-1729.1 14858.01,-1761.1 14951.01,-1665.5 14986.01,-1628.9 14905.01,-1616.6 14883.01,-1564.5 14861.01,-1511.1 14859.01,-1488.4 14880.01,-1434.5 14902.01,-1377.9 14925.01,-1371.3 14972.01,-1333.5 15043.01,-1276.6 15070.01,-1275.3 15151.01,-1232.5 15215.01,-1198.8 15249.01,-1214.7 15296.01,-1160.5 15410.01,-1030.1 15432.01,-804.13 15435.01,-753.32"/>
<polygon fill="black" stroke="black" points="15438.53,-753.32 15436.01,-743.03 15431.56,-752.64 15438.53,-753.32"/>
</a>
</g>
</g>
<!-- has_continuous_add -->
<g id="node188" class="node">
<title>has_continuous_add</title>
<g id="a_node188"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_add" xlink:title="has_continuous_add">
<polygon fill="none" stroke="black" points="12263.51,-1667 12098.51,-1667 12098.51,-1636 12263.51,-1636 12263.51,-1667"/>
<text text-anchor="middle" x="12181.01" y="-1647.8" font-family="Courier,monospace" font-size="14.00">has_continuous_add</text>
</a>
</g>
</g>
<!-- topological_add_group&#45;&gt;has_continuous_add -->
<g id="edge352" class="edge">
<title>topological_add_group&#45;&gt;has_continuous_add</title>
<g id="a_edge352"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_add_group.to_has_continuous_add" xlink:title="topological_add_group.to_has_continuous_add">
<path fill="none" stroke="black" d="M12381.01,-1737.4C12340.01,-1719.8 12268.01,-1688.9 12222.01,-1669.5"/>
<polygon fill="black" stroke="black" points="12223.58,-1666.36 12213.01,-1665.6 12220.8,-1672.79 12223.58,-1666.36"/>
</a>
</g>
</g>
<!-- has_continuous_neg -->
<g id="node189" class="node">
<title>has_continuous_neg</title>
<g id="a_node189"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_neg" xlink:title="has_continuous_neg">
<polygon fill="none" stroke="black" points="12082.51,-1667 11917.51,-1667 11917.51,-1636 12082.51,-1636 12082.51,-1667"/>
<text text-anchor="middle" x="12000.01" y="-1647.8" font-family="Courier,monospace" font-size="14.00">has_continuous_neg</text>
</a>
</g>
</g>
<!-- topological_add_group&#45;&gt;has_continuous_neg -->
<g id="edge353" class="edge">
<title>topological_add_group&#45;&gt;has_continuous_neg</title>
<g id="a_edge353"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_add_group.to_has_continuous_neg" xlink:title="topological_add_group.to_has_continuous_neg">
<path fill="none" stroke="black" d="M12356.01,-1737.4C12281.01,-1719.3 12147.01,-1687.2 12067.01,-1668"/>
<polygon fill="black" stroke="black" points="12067.55,-1664.53 12057.01,-1665.6 12065.92,-1671.34 12067.55,-1664.53"/>
</a>
</g>
</g>
<!-- topological_add_group.has_measurable_neg -->
<g id="node190" class="node">
<title>topological_add_group.has_measurable_neg</title>
<g id="a_node190"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_add_group.has_measurable_neg" xlink:title="topological_add_group.has_measurable_neg">
<ellipse fill="black" stroke="black" cx="12158.01" cy="-1550.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- topological_add_group&#45;&gt;topological_add_group.has_measurable_neg -->
<g id="edge354" class="edge">
<title>topological_add_group&#45;&gt;topological_add_group.has_measurable_neg</title>
<g id="a_edge354"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_add_group.has_measurable_neg" xlink:title="topological_add_group.has_measurable_neg">
<path fill="none" stroke="black" d="M12434.01,-1737.5C12466.01,-1715.5 12519.01,-1671.2 12491.01,-1636.5 12399.01,-1521.4 12289.01,-1647.9 12167.01,-1564.5 12165.01,-1563.4 12164.01,-1561.8 12163.01,-1560.2"/>
<polygon fill="black" stroke="black" points="12165.9,-1558.18 12158.01,-1551.1 12159.76,-1561.55 12165.9,-1558.18"/>
</a>
</g>
</g>
<!-- has_continuous_sub -->
<g id="node191" class="node">
<title>has_continuous_sub</title>
<g id="a_node191"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_sub" xlink:title="has_continuous_sub">
<polygon fill="none" stroke="black" points="12483.51,-1667 12318.51,-1667 12318.51,-1636 12483.51,-1636 12483.51,-1667"/>
<text text-anchor="middle" x="12401.01" y="-1647.8" font-family="Courier,monospace" font-size="14.00">has_continuous_sub</text>
</a>
</g>
</g>
<!-- topological_add_group&#45;&gt;has_continuous_sub -->
<g id="edge355" class="edge">
<title>topological_add_group&#45;&gt;has_continuous_sub</title>
<g id="a_edge355"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_add_group.to_has_continuous_sub" xlink:title="topological_add_group.to_has_continuous_sub">
<path fill="none" stroke="black" d="M12411.01,-1737.2C12409.01,-1721.3 12406.01,-1695 12404.01,-1675.7"/>
<polygon fill="black" stroke="black" points="12407.48,-1675.21 12403.01,-1665.6 12400.52,-1675.9 12407.48,-1675.21"/>
</a>
</g>
</g>
<!-- topological_add_group&#45;&gt;separable_locally_compact_add_group.sigma_compact_space -->
<g id="edge356" class="edge">
<title>topological_add_group&#45;&gt;separable_locally_compact_add_group.sigma_compact_space</title>
<g id="a_edge356"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/separable_locally_compact_add_group.sigma_compact_space" xlink:title="separable_locally_compact_add_group.sigma_compact_space">
<path fill="none" stroke="black" d="M12507.01,-1741C12523.01,-1739.6 12539.01,-1738.4 12554.01,-1737.5 12916.01,-1716.2 15457.01,-1733.5 15813.01,-1665.5 15940.01,-1641.3 15984.01,-1644.6 16085.01,-1564.5 16228.01,-1451.1 16272.01,-1209.1 16281.01,-1157"/>
<polygon fill="black" stroke="black" points="16284.49,-1157.4 16282.01,-1147.1 16277.53,-1156.7 16284.49,-1157.4"/>
</a>
</g>
</g>
<!-- has_continuous_smul -->
<g id="node193" class="node">
<title>has_continuous_smul</title>
<g id="a_node193"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_smul" xlink:title="has_continuous_smul">
<polygon fill="none" stroke="black" points="13289.01,-1566 13115.01,-1566 13115.01,-1535 13289.01,-1535 13289.01,-1566"/>
<text text-anchor="middle" x="13202.01" y="-1546.8" font-family="Courier,monospace" font-size="14.00">has_continuous_smul</text>
</a>
</g>
</g>
<!-- has_continuous_mul&#45;&gt;has_continuous_smul -->
<g id="edge357" class="edge">
<title>has_continuous_mul&#45;&gt;has_continuous_smul</title>
<g id="a_edge357"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_mul.has_continuous_smul" xlink:title="has_continuous_mul.has_continuous_smul">
<path fill="none" stroke="black" d="M13221.01,-1636.2C13217.01,-1620.3 13211.01,-1593.7 13207.01,-1574.5"/>
<polygon fill="black" stroke="black" points="13210.42,-1573.71 13205.01,-1564.6 13203.56,-1575.1 13210.42,-1573.71"/>
</a>
</g>
</g>
<!-- has_continuous_mul.has_measurable_mul₂ -->
<g id="node194" class="node">
<title>has_continuous_mul.has_measurable_mul₂</title>
<g id="a_node194"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_mul.has_measurable_mul₂" xlink:title="has_continuous_mul.has_measurable_mul₂">
<ellipse fill="black" stroke="black" cx="13694.01" cy="-1550.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_continuous_mul&#45;&gt;has_continuous_mul.has_measurable_mul₂ -->
<g id="edge358" class="edge">
<title>has_continuous_mul&#45;&gt;has_continuous_mul.has_measurable_mul₂</title>
<g id="a_edge358"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_mul.has_measurable_mul₂" xlink:title="has_continuous_mul.has_measurable_mul₂">
<path fill="none" stroke="black" d="M13288.01,-1636.4C13403.01,-1612.4 13634.01,-1563.7 13684.01,-1553.1"/>
<polygon fill="black" stroke="black" points="13684.95,-1556.48 13694.01,-1551 13683.51,-1549.63 13684.95,-1556.48"/>
</a>
</g>
</g>
<!-- is_scalar_tower.has_continuous_const_smul -->
<g id="node195" class="node">
<title>is_scalar_tower.has_continuous_const_smul</title>
<g id="a_node195"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_scalar_tower.has_continuous_const_smul" xlink:title="is_scalar_tower.has_continuous_const_smul">
<ellipse fill="black" stroke="black" cx="14908.01" cy="-1550.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_continuous_mul&#45;&gt;is_scalar_tower.has_continuous_const_smul -->
<g id="edge359" class="edge">
<title>has_continuous_mul&#45;&gt;is_scalar_tower.has_continuous_const_smul</title>
<g id="a_edge359"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_scalar_tower.has_continuous_const_smul" xlink:title="is_scalar_tower.has_continuous_const_smul">
<path fill="none" stroke="black" d="M13306.01,-1640.7C13321.01,-1639.2 13337.01,-1637.7 13352.01,-1636.5 13986.01,-1587.2 14146.01,-1613.8 14780.01,-1564.5 14824.01,-1561.1 14876.01,-1554.9 14898.01,-1552.2"/>
<polygon fill="black" stroke="black" points="14898.5,-1555.67 14908.01,-1551 14897.67,-1548.72 14898.5,-1555.67"/>
</a>
</g>
</g>
<!-- smul_comm_class.has_continuous_const_smul -->
<g id="node196" class="node">
<title>smul_comm_class.has_continuous_const_smul</title>
<g id="a_node196"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/smul_comm_class.has_continuous_const_smul" xlink:title="smul_comm_class.has_continuous_const_smul">
<ellipse fill="black" stroke="black" cx="14964.01" cy="-1550.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_continuous_mul&#45;&gt;smul_comm_class.has_continuous_const_smul -->
<g id="edge360" class="edge">
<title>has_continuous_mul&#45;&gt;smul_comm_class.has_continuous_const_smul</title>
<g id="a_edge360"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/smul_comm_class.has_continuous_const_smul" xlink:title="smul_comm_class.has_continuous_const_smul">
<path fill="none" stroke="black" d="M13306.01,-1640.7C13321.01,-1639.1 13337.01,-1637.6 13352.01,-1636.5 14046.01,-1584 14230.01,-1677.4 14917.01,-1564.5 14930.01,-1562.3 14945.01,-1557.8 14954.01,-1554.5"/>
<polygon fill="black" stroke="black" points="14955.73,-1557.61 14964.01,-1551 14953.42,-1551 14955.73,-1557.61"/>
</a>
</g>
</g>
<!-- has_continuous_mul.has_measurable_mul -->
<g id="node197" class="node">
<title>has_continuous_mul.has_measurable_mul</title>
<g id="a_node197"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_mul.has_measurable_mul" xlink:title="has_continuous_mul.has_measurable_mul">
<ellipse fill="black" stroke="black" cx="13306.01" cy="-1550.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_continuous_mul&#45;&gt;has_continuous_mul.has_measurable_mul -->
<g id="edge361" class="edge">
<title>has_continuous_mul&#45;&gt;has_continuous_mul.has_measurable_mul</title>
<g id="a_edge361"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_mul.has_measurable_mul" xlink:title="has_continuous_mul.has_measurable_mul">
<path fill="none" stroke="black" d="M13236.01,-1636.3C13251.01,-1619.6 13276.01,-1590.4 13296.01,-1564.5 13297.01,-1562.9 13299.01,-1561.1 13300.01,-1559.4"/>
<polygon fill="black" stroke="black" points="13302.99,-1561.25 13306.01,-1551.1 13297.32,-1557.15 13302.99,-1561.25"/>
</a>
</g>
</g>
<!-- compact_space&#45;&gt;locally_compact_of_compact -->
<g id="edge362" class="edge">
<title>compact_space&#45;&gt;locally_compact_of_compact</title>
<g id="a_edge362"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/locally_compact_of_compact" xlink:title="locally_compact_of_compact">
<path fill="none" stroke="black" d="M14333.01,-1946.7C14359.01,-1944.2 14390.01,-1941.4 14418.01,-1939.5 14506.01,-1933.4 15942.01,-1928.7 16006.01,-1867.5 16113.01,-1765 16117.01,-1656.5 16032.01,-1535.5 15904.01,-1353.4 15581.01,-1348.1 15519.01,-1348.8"/>
<polygon fill="black" stroke="black" points="15518.94,-1345.3 15509.01,-1349 15519.08,-1352.3 15518.94,-1345.3"/>
</a>
</g>
</g>
<!-- compact_space&#45;&gt;paracompact_space -->
<g id="edge365" class="edge">
<title>compact_space&#45;&gt;paracompact_space</title>
<g id="a_edge365"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/paracompact_of_compact" xlink:title="paracompact_of_compact">
<path fill="none" stroke="black" d="M14211.01,-1941C14108.01,-1920.5 13910.01,-1879.7 13900.01,-1867.5 13877.01,-1838.8 13895.01,-1798.9 13932.01,-1737.5 13955.01,-1699 13986.01,-1707.1 14003.01,-1665.5 14007.01,-1656.7 14013.01,-1648.4 14002.01,-1535.5 13993.01,-1442.9 13993.01,-1414.2 13947.01,-1333.5 13918.01,-1282.6 13908.01,-1269.5 13862.01,-1232.5 13810.01,-1189.9 13766.01,-1216.4 13728.01,-1160.5 13665.01,-1067.9 13716.01,-922.71 13740.01,-866.89"/>
<polygon fill="black" stroke="black" points="13743.3,-868.11 13744.01,-857.54 13736.86,-865.36 13743.3,-868.11"/>
</a>
</g>
</g>
<!-- proper_space -->
<g id="node198" class="node">
<title>proper_space</title>
<g id="a_node198"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/proper_space" xlink:title="proper_space">
<polygon fill="none" stroke="black" points="14458.51,-1868 14343.51,-1868 14343.51,-1837 14458.51,-1837 14458.51,-1868"/>
<text text-anchor="middle" x="14401.01" y="-1848.8" font-family="Courier,monospace" font-size="14.00">proper_space</text>
</a>
</g>
</g>
<!-- compact_space&#45;&gt;proper_space -->
<g id="edge363" class="edge">
<title>compact_space&#45;&gt;proper_space</title>
<g id="a_edge363"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/proper_of_compact" xlink:title="proper_of_compact">
<path fill="none" stroke="black" d="M14290.01,-1939.4C14312.01,-1922.5 14350.01,-1893.4 14375.01,-1873.9"/>
<polygon fill="black" stroke="black" points="14377.25,-1876.59 14383.01,-1867.7 14372.97,-1871.06 14377.25,-1876.59"/>
</a>
</g>
</g>
<!-- first_countable_topology.seq_compact_of_compact -->
<g id="node199" class="node">
<title>first_countable_topology.seq_compact_of_compact</title>
<g id="a_node199"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_countable_topology.seq_compact_of_compact" xlink:title="first_countable_topology.seq_compact_of_compact">
<ellipse fill="black" stroke="black" cx="12140.01" cy="-1550.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- compact_space&#45;&gt;first_countable_topology.seq_compact_of_compact -->
<g id="edge364" class="edge">
<title>compact_space&#45;&gt;first_countable_topology.seq_compact_of_compact</title>
<g id="a_edge364"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_countable_topology.seq_compact_of_compact" xlink:title="first_countable_topology.seq_compact_of_compact">
<path fill="none" stroke="black" d="M14211.01,-1945.4C14065.01,-1926.9 13703.01,-1880.7 13649.01,-1867.5 13612.01,-1858.4 13605.01,-1846.9 13568.01,-1838.5 13246.01,-1766.3 13150.01,-1842.7 12828.01,-1766.5 12823.01,-1765.3 12496.01,-1637.9 12491.01,-1636.5 12342.01,-1592.4 12278.01,-1651.6 12149.01,-1564.5 12147.01,-1563.4 12146.01,-1561.8 12145.01,-1560.2"/>
<polygon fill="black" stroke="black" points="12147.9,-1558.18 12140.01,-1551.1 12141.76,-1561.55 12147.9,-1558.18"/>
</a>
</g>
</g>
<!-- sigma_compact_space -->
<g id="node200" class="node">
<title>sigma_compact_space</title>
<g id="a_node200"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/sigma_compact_space" xlink:title="sigma_compact_space">
<polygon fill="none" stroke="black" points="16369.01,-1060 16195.01,-1060 16195.01,-1029 16369.01,-1029 16369.01,-1060"/>
<text text-anchor="middle" x="16282.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">sigma_compact_space</text>
</a>
</g>
</g>
<!-- compact_space&#45;&gt;sigma_compact_space -->
<g id="edge366" class="edge">
<title>compact_space&#45;&gt;sigma_compact_space</title>
<g id="a_edge366"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/compact_space.sigma_compact" xlink:title="compact_space.sigma_compact">
<path fill="none" stroke="black" d="M14333.01,-1946.7C14359.01,-1944.2 14390.01,-1941.4 14418.01,-1939.5 15135.01,-1890.4 15328.01,-2005.1 16034.01,-1867.5 16193.01,-1836.5 16690.01,-1712.9 16690.01,-1551 16690.01,-1551 16690.01,-1551 16690.01,-1448 16690.01,-1315.7 16554.01,-1352.6 16458.01,-1261.5 16391.01,-1197.8 16326.01,-1108.8 16297.01,-1068"/>
<polygon fill="black" stroke="black" points="16299.67,-1065.7 16291.01,-1059.6 16293.98,-1069.77 16299.67,-1065.7"/>
</a>
</g>
</g>
<!-- complete_space -->
<g id="node201" class="node">
<title>complete_space</title>
<g id="a_node201"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/complete_space" xlink:title="complete_space">
<polygon fill="none" stroke="black" points="14072.01,-1767 13940.01,-1767 13940.01,-1736 14072.01,-1736 14072.01,-1767"/>
<text text-anchor="middle" x="14006.01" y="-1747.8" font-family="Courier,monospace" font-size="14.00">complete_space</text>
</a>
</g>
</g>
<!-- compact_space&#45;&gt;complete_space -->
<g id="edge367" class="edge">
<title>compact_space&#45;&gt;complete_space</title>
<g id="a_edge367"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/complete_of_compact" xlink:title="complete_of_compact">
<path fill="none" stroke="black" d="M14211.01,-1940.5C14110.01,-1919.8 13920.01,-1879.4 13911.01,-1867.5 13884.01,-1833.2 13934.01,-1794.1 13971.01,-1771.7"/>
<polygon fill="black" stroke="black" points="13973.04,-1774.58 13980.01,-1766.6 13969.59,-1768.49 13973.04,-1774.58"/>
</a>
</g>
</g>
<!-- topological_ring -->
<g id="node202" class="node">
<title>topological_ring</title>
<g id="a_node202"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_ring" xlink:title="topological_ring">
<polygon fill="none" stroke="black" points="12685.01,-1868 12537.01,-1868 12537.01,-1837 12685.01,-1837 12685.01,-1868"/>
<text text-anchor="middle" x="12611.01" y="-1848.8" font-family="Courier,monospace" font-size="14.00">topological_ring</text>
</a>
</g>
</g>
<!-- topological_division_ring&#45;&gt;topological_ring -->
<g id="edge368" class="edge">
<title>topological_division_ring&#45;&gt;topological_ring</title>
<g id="a_edge368"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_division_ring.to_topological_ring" xlink:title="topological_division_ring.to_topological_ring">
<path fill="none" stroke="black" d="M12842.01,-1939.4C12794.01,-1921.6 12710.01,-1890.4 12657.01,-1871"/>
<polygon fill="black" stroke="black" points="12658.61,-1867.86 12648.01,-1867.6 12656.13,-1874.41 12658.61,-1867.86"/>
</a>
</g>
</g>
<!-- has_continuous_inv₀ -->
<g id="node203" class="node">
<title>has_continuous_inv₀</title>
<g id="a_node203"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_inv₀" xlink:title="has_continuous_inv₀">
<polygon fill="none" stroke="black" points="13018.01,-1767 12828.01,-1767 12828.01,-1736 13018.01,-1736 13018.01,-1767"/>
<text text-anchor="middle" x="12923.01" y="-1747.8" font-family="Courier,monospace" font-size="14.00">has_continuous_inv₀</text>
</a>
</g>
</g>
<!-- topological_division_ring&#45;&gt;has_continuous_inv₀ -->
<g id="edge369" class="edge">
<title>topological_division_ring&#45;&gt;has_continuous_inv₀</title>
<g id="a_edge369"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_division_ring.to_has_continuous_inv₀" xlink:title="topological_division_ring.to_has_continuous_inv₀">
<path fill="none" stroke="black" d="M12882.01,-1939.3C12889.01,-1905.6 12909.01,-1818.6 12918.01,-1776.5"/>
<polygon fill="black" stroke="black" points="12921.46,-1777.1 12920.01,-1766.6 12914.6,-1775.71 12921.46,-1777.1"/>
</a>
</g>
</g>
<!-- filter.ne_bot -->
<g id="node204" class="node">
<title>filter.ne_bot</title>
<g id="a_node204"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.ne_bot" xlink:title="filter.ne_bot">
<polygon fill="none" stroke="black" points="14832.51,-958.98 14709.51,-958.98 14709.51,-927.98 14832.51,-927.98 14832.51,-958.98"/>
<text text-anchor="middle" x="14771.01" y="-939.78" font-family="Courier,monospace" font-size="14.00">filter.ne_bot</text>
</a>
</g>
</g>
<!-- nhds_within.filter.ne_bot&#45;&gt;filter.ne_bot -->
<g id="edge370" class="edge">
<title>nhds_within.filter.ne_bot&#45;&gt;filter.ne_bot</title>
<g id="a_edge370"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within.filter.ne_bot" xlink:title="nhds_within.filter.ne_bot">
<path fill="none" stroke="black" d="M13234.01,-1952.9C13234.01,-1951.8 13237.01,-1942.9 13243.01,-1939.5 13422.01,-1834.8 14017.01,-2004.3 14172.01,-1867.5 14251.01,-1798.2 14190.01,-1737 14220.01,-1636.5 14230.01,-1603.6 14238.01,-1597.4 14248.01,-1564.5 14278.01,-1464 14221.01,-1406.7 14296.01,-1333.5 14425.01,-1207.8 14528.01,-1330.1 14695.01,-1261.5 14768.01,-1231.3 14805.01,-1230.6 14842.01,-1160.5 14869.01,-1109.4 14862.01,-1084.8 14842.01,-1030.5 14833.01,-1004.9 14812.01,-981.57 14796.01,-965.77"/>
<polygon fill="black" stroke="black" points="14797.81,-962.68 14788.01,-958.64 14793.15,-967.91 14797.81,-962.68"/>
</a>
</g>
</g>
<!-- nhds_within_Ioi_self_ne_bot&#45;&gt;filter.ne_bot -->
<g id="edge371" class="edge">
<title>nhds_within_Ioi_self_ne_bot&#45;&gt;filter.ne_bot</title>
<g id="a_edge371"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Ioi_self_ne_bot" xlink:title="nhds_within_Ioi_self_ne_bot">
<path fill="none" stroke="black" d="M13046.01,-1953C13049.01,-1952.4 13094.01,-1943.8 13131.01,-1939.5 13238.01,-1927 14017.01,-1936.2 14100.01,-1867.5 14195.01,-1789.2 14162.01,-1423.4 14246.01,-1333.5 14266.01,-1312.3 14718.01,-1180.9 14739.01,-1160.5 14791.01,-1109.3 14783.01,-1013.1 14776.01,-968.62"/>
<polygon fill="black" stroke="black" points="14779.38,-967.62 14774.01,-958.49 14772.52,-968.98 14779.38,-967.62"/>
</a>
</g>
</g>
<!-- preconnected_space -->
<g id="node205" class="node">
<title>preconnected_space</title>
<g id="a_node205"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/preconnected_space" xlink:title="preconnected_space">
<polygon fill="none" stroke="black" points="10264.51,-1060 10099.51,-1060 10099.51,-1029 10264.51,-1029 10264.51,-1060"/>
<text text-anchor="middle" x="10182.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">preconnected_space</text>
</a>
</g>
</g>
<!-- ordered_connected_space&#45;&gt;preconnected_space -->
<g id="edge372" class="edge">
<title>ordered_connected_space&#45;&gt;preconnected_space</title>
<g id="a_edge372"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_connected_space" xlink:title="ordered_connected_space">
<path fill="none" stroke="black" d="M12349.01,-1952.9C12349.01,-1951.8 12346.01,-1943.1 12340.01,-1939.5 12127.01,-1807.2 12019.01,-1945.2 11780.01,-1867.5 11691.01,-1838.6 11675.01,-1816.9 11596.01,-1766.5 11578.01,-1754.8 11576.01,-1747.5 11557.01,-1737.5 10957.01,-1426 10581.01,-1748.8 10112.01,-1261.5 10071.01,-1218.8 10058.01,-1185.3 10083.01,-1131.5 10096.01,-1102.6 10125.01,-1079.7 10148.01,-1064.9"/>
<polygon fill="black" stroke="black" points="10149.54,-1068.08 10156.01,-1059.7 10145.72,-1062.22 10149.54,-1068.08"/>
</a>
</g>
</g>
<!-- nhds_within_Iio_self_ne_bot&#45;&gt;filter.ne_bot -->
<g id="edge373" class="edge">
<title>nhds_within_Iio_self_ne_bot&#45;&gt;filter.ne_bot</title>
<g id="a_edge373"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Iio_self_ne_bot" xlink:title="nhds_within_Iio_self_ne_bot">
<path fill="none" stroke="black" d="M13140.01,-1953C13143.01,-1952.4 13188.01,-1943.9 13225.01,-1939.5 13326.01,-1927.5 14057.01,-1932.9 14134.01,-1867.5 14228.01,-1788.5 14183.01,-1420.6 14269.01,-1333.5 14356.01,-1245.4 14420.01,-1299.5 14538.01,-1261.5 14598.01,-1242.1 14768.01,-1212.5 14804.01,-1160.5 14845.01,-1100.7 14806.01,-1009.3 14784.01,-967.41"/>
<polygon fill="black" stroke="black" points="14786.98,-965.54 14779.01,-958.56 14780.89,-968.99 14786.98,-965.54"/>
</a>
</g>
</g>
<!-- real.punctured_nhds_module_ne_bot -->
<g id="node206" class="node">
<title>real.punctured_nhds_module_ne_bot</title>
<g id="a_node206"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/real.punctured_nhds_module_ne_bot" xlink:title="real.punctured_nhds_module_ne_bot">
<ellipse fill="black" stroke="black" cx="13744.01" cy="-1448.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_continuous_add&#45;&gt;real.punctured_nhds_module_ne_bot -->
<g id="edge374" class="edge">
<title>has_continuous_add&#45;&gt;real.punctured_nhds_module_ne_bot</title>
<g id="a_edge374"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/real.punctured_nhds_module_ne_bot" xlink:title="real.punctured_nhds_module_ne_bot">
<path fill="none" stroke="black" d="M12250.01,-1636.5C12374.01,-1612.8 12640.01,-1563.8 12867.01,-1535.5 13058.01,-1511.6 13555.01,-1542.9 13730.01,-1463.5 13733.01,-1462.2 13735.01,-1460.2 13737.01,-1458.1"/>
<polygon fill="black" stroke="black" points="13740.06,-1459.93 13744.01,-1450.1 13734.79,-1455.32 13740.06,-1459.93"/>
</a>
</g>
</g>
<!-- real_topological_vector_space.contractible_space -->
<g id="node207" class="node">
<title>real_topological_vector_space.contractible_space</title>
<g id="a_node207"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/real_topological_vector_space.contractible_space" xlink:title="real_topological_vector_space.contractible_space">
<ellipse fill="black" stroke="black" cx="11749.01" cy="-1448.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_continuous_add&#45;&gt;real_topological_vector_space.contractible_space -->
<g id="edge375" class="edge">
<title>has_continuous_add&#45;&gt;real_topological_vector_space.contractible_space</title>
<g id="a_edge375"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/real_topological_vector_space.contractible_space" xlink:title="real_topological_vector_space.contractible_space">
<path fill="none" stroke="black" d="M12158.01,-1636.5C12120.01,-1614 12041.01,-1568.1 11970.01,-1535.5 11890.01,-1498.6 11790.01,-1463.8 11759.01,-1453.2"/>
<polygon fill="black" stroke="black" points="11759.6,-1449.71 11749.01,-1450 11757.47,-1456.38 11759.6,-1449.71"/>
</a>
</g>
</g>
<!-- has_continuous_vadd -->
<g id="node208" class="node">
<title>has_continuous_vadd</title>
<g id="a_node208"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_vadd" xlink:title="has_continuous_vadd">
<polygon fill="none" stroke="black" points="11963.01,-1566 11789.01,-1566 11789.01,-1535 11963.01,-1535 11963.01,-1566"/>
<text text-anchor="middle" x="11876.01" y="-1546.8" font-family="Courier,monospace" font-size="14.00">has_continuous_vadd</text>
</a>
</g>
</g>
<!-- has_continuous_add&#45;&gt;has_continuous_vadd -->
<g id="edge376" class="edge">
<title>has_continuous_add&#45;&gt;has_continuous_vadd</title>
<g id="a_edge376"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_add.has_continuous_vadd" xlink:title="has_continuous_add.has_continuous_vadd">
<path fill="none" stroke="black" d="M12139.01,-1636.4C12084.01,-1618.5 11987.01,-1587 11927.01,-1567.7"/>
<polygon fill="black" stroke="black" points="11928.61,-1564.55 11918.01,-1564.6 11926.33,-1571.17 11928.61,-1564.55"/>
</a>
</g>
</g>
<!-- has_continuous_add.has_measurable_add -->
<g id="node209" class="node">
<title>has_continuous_add.has_measurable_add</title>
<g id="a_node209"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_add.has_measurable_add" xlink:title="has_continuous_add.has_measurable_add">
<ellipse fill="black" stroke="black" cx="12104.01" cy="-1550.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_continuous_add&#45;&gt;has_continuous_add.has_measurable_add -->
<g id="edge377" class="edge">
<title>has_continuous_add&#45;&gt;has_continuous_add.has_measurable_add</title>
<g id="a_edge377"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_add.has_measurable_add" xlink:title="has_continuous_add.has_measurable_add">
<path fill="none" stroke="black" d="M12170.01,-1636.4C12156.01,-1619.7 12132.01,-1590.6 12113.01,-1564.5 12112.01,-1563 12111.01,-1561.3 12110.01,-1559.7"/>
<polygon fill="black" stroke="black" points="12112.61,-1557.3 12104.01,-1551.1 12106.87,-1561.3 12112.61,-1557.3"/>
</a>
</g>
</g>
<!-- has_continuous_add.has_measurable_mul₂ -->
<g id="node210" class="node">
<title>has_continuous_add.has_measurable_mul₂</title>
<g id="a_node210"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_add.has_measurable_mul₂" xlink:title="has_continuous_add.has_measurable_mul₂">
<ellipse fill="black" stroke="black" cx="12876.01" cy="-1550.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_continuous_add&#45;&gt;has_continuous_add.has_measurable_mul₂ -->
<g id="edge378" class="edge">
<title>has_continuous_add&#45;&gt;has_continuous_add.has_measurable_mul₂</title>
<g id="a_edge378"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_add.has_measurable_mul₂" xlink:title="has_continuous_add.has_measurable_mul₂">
<path fill="none" stroke="black" d="M12263.01,-1638.4C12430.01,-1614.6 12800.01,-1561.9 12866.01,-1552.5"/>
<polygon fill="black" stroke="black" points="12866.64,-1555.94 12876.01,-1551 12865.61,-1549.02 12866.64,-1555.94"/>
</a>
</g>
</g>
<!-- has_measurable_neg -->
<g id="node211" class="node">
<title>has_measurable_neg</title>
<g id="a_node211"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_neg" xlink:title="has_measurable_neg">
<polygon fill="none" stroke="black" points="12180.51,-1464 12015.51,-1464 12015.51,-1433 12180.51,-1433 12180.51,-1464"/>
<text text-anchor="middle" x="12098.01" y="-1444.8" font-family="Courier,monospace" font-size="14.00">has_measurable_neg</text>
</a>
</g>
</g>
<!-- topological_add_group.has_measurable_neg&#45;&gt;has_measurable_neg -->
<g id="edge379" class="edge">
<title>topological_add_group.has_measurable_neg&#45;&gt;has_measurable_neg</title>
<g id="a_edge379"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_add_group.has_measurable_neg" xlink:title="topological_add_group.has_measurable_neg">
<path fill="none" stroke="black" d="M12158.01,-1548.9C12157.01,-1546.9 12129.01,-1500.9 12112.01,-1472.4"/>
<polygon fill="black" stroke="black" points="12114.61,-1470 12106.01,-1463.8 12108.87,-1474 12114.61,-1470"/>
</a>
</g>
</g>
<!-- has_continuous_sub.has_measurable_sub₂ -->
<g id="node212" class="node">
<title>has_continuous_sub.has_measurable_sub₂</title>
<g id="a_node212"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_sub.has_measurable_sub₂" xlink:title="has_continuous_sub.has_measurable_sub₂">
<ellipse fill="black" stroke="black" cx="12945.01" cy="-1550.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_continuous_sub&#45;&gt;has_continuous_sub.has_measurable_sub₂ -->
<g id="edge380" class="edge">
<title>has_continuous_sub&#45;&gt;has_continuous_sub.has_measurable_sub₂</title>
<g id="a_edge380"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_sub.has_measurable_sub₂" xlink:title="has_continuous_sub.has_measurable_sub₂">
<path fill="none" stroke="black" d="M12483.01,-1636.8C12579.01,-1620.9 12744.01,-1592.8 12885.01,-1564.5 12903.01,-1561 12923.01,-1556.2 12935.01,-1553.4"/>
<polygon fill="black" stroke="black" points="12936.11,-1556.74 12945.01,-1551 12934.47,-1549.93 12936.11,-1556.74"/>
</a>
</g>
</g>
<!-- has_continuous_sub.has_measurable_sub -->
<g id="node213" class="node">
<title>has_continuous_sub.has_measurable_sub</title>
<g id="a_node213"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_sub.has_measurable_sub" xlink:title="has_continuous_sub.has_measurable_sub">
<ellipse fill="black" stroke="black" cx="12122.01" cy="-1550.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_continuous_sub&#45;&gt;has_continuous_sub.has_measurable_sub -->
<g id="edge381" class="edge">
<title>has_continuous_sub&#45;&gt;has_continuous_sub.has_measurable_sub</title>
<g id="a_edge381"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_sub.has_measurable_sub" xlink:title="has_continuous_sub.has_measurable_sub">
<path fill="none" stroke="black" d="M12319.01,-1638.8C12262.01,-1627.7 12186.01,-1606 12131.01,-1564.5 12129.01,-1563.3 12128.01,-1561.7 12127.01,-1560.1"/>
<polygon fill="black" stroke="black" points="12129.93,-1558.14 12122.01,-1551.1 12123.81,-1561.54 12129.93,-1558.14"/>
</a>
</g>
</g>
<!-- separable_locally_compact_add_group.sigma_compact_space&#45;&gt;sigma_compact_space -->
<g id="edge382" class="edge">
<title>separable_locally_compact_add_group.sigma_compact_space&#45;&gt;sigma_compact_space</title>
<g id="a_edge382"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/separable_locally_compact_add_group.sigma_compact_space" xlink:title="separable_locally_compact_add_group.sigma_compact_space">
<path fill="none" stroke="black" d="M16282.01,-1144.9C16282.01,-1142.9 16282.01,-1098.5 16282.01,-1069.9"/>
<polygon fill="black" stroke="black" points="16285.51,-1069.8 16282.01,-1059.8 16278.51,-1069.8 16285.51,-1069.8"/>
</a>
</g>
</g>
<!-- has_continuous_smul&#45;&gt;real.punctured_nhds_module_ne_bot -->
<g id="edge383" class="edge">
<title>has_continuous_smul&#45;&gt;real.punctured_nhds_module_ne_bot</title>
<g id="a_edge383"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/real.punctured_nhds_module_ne_bot" xlink:title="real.punctured_nhds_module_ne_bot">
<path fill="none" stroke="black" d="M13288.01,-1536.5C13432.01,-1515.2 13710.01,-1473.3 13730.01,-1463.5 13733.01,-1462.1 13735.01,-1460.1 13737.01,-1458"/>
<polygon fill="black" stroke="black" points="13740,-1459.91 13744.01,-1450.1 13734.76,-1455.26 13740,-1459.91"/>
</a>
</g>
</g>
<!-- has_continuous_smul&#45;&gt;real_topological_vector_space.contractible_space -->
<g id="edge384" class="edge">
<title>has_continuous_smul&#45;&gt;real_topological_vector_space.contractible_space</title>
<g id="a_edge384"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/real_topological_vector_space.contractible_space" xlink:title="real_topological_vector_space.contractible_space">
<path fill="none" stroke="black" d="M13116.01,-1544.1C12837.01,-1528.1 11961.01,-1477.5 11834.01,-1463.5 11807.01,-1460.5 11775.01,-1454.9 11759.01,-1451.9"/>
<polygon fill="black" stroke="black" points="11759.49,-1448.43 11749.01,-1450 11758.18,-1455.31 11759.49,-1448.43"/>
</a>
</g>
</g>
<!-- has_continuous_const_smul -->
<g id="node214" class="node">
<title>has_continuous_const_smul</title>
<g id="a_node214"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_const_smul" xlink:title="has_continuous_const_smul">
<polygon fill="none" stroke="black" points="15131.01,-1464 14907.01,-1464 14907.01,-1433 15131.01,-1433 15131.01,-1464"/>
<text text-anchor="middle" x="15019.01" y="-1444.8" font-family="Courier,monospace" font-size="14.00">has_continuous_const_smul</text>
</a>
</g>
</g>
<!-- has_continuous_smul&#45;&gt;has_continuous_const_smul -->
<g id="edge385" class="edge">
<title>has_continuous_smul&#45;&gt;has_continuous_const_smul</title>
<g id="a_edge385"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_smul.has_continuous_const_smul" xlink:title="has_continuous_smul.has_continuous_const_smul">
<path fill="none" stroke="black" d="M13288.01,-1536.4C13291.01,-1536.1 13294.01,-1535.8 13297.01,-1535.5 13973.01,-1471.7 14145.01,-1502.7 14822.01,-1463.5 14847.01,-1462.1 14873.01,-1460.4 14898.01,-1458.7"/>
<polygon fill="black" stroke="black" points="14898.28,-1462.19 14908.01,-1458 14897.79,-1455.21 14898.28,-1462.19"/>
</a>
</g>
</g>
<!-- has_continuous_smul.has_measurable_smul₂ -->
<g id="node215" class="node">
<title>has_continuous_smul.has_measurable_smul₂</title>
<g id="a_node215"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_smul.has_measurable_smul₂" xlink:title="has_continuous_smul.has_measurable_smul₂">
<ellipse fill="black" stroke="black" cx="13498.01" cy="-1448.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_continuous_smul&#45;&gt;has_continuous_smul.has_measurable_smul₂ -->
<g id="edge386" class="edge">
<title>has_continuous_smul&#45;&gt;has_continuous_smul.has_measurable_smul₂</title>
<g id="a_edge386"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_smul.has_measurable_smul₂" xlink:title="has_continuous_smul.has_measurable_smul₂">
<path fill="none" stroke="black" d="M13243.01,-1535.4C13312.01,-1512.2 13450.01,-1466 13488.01,-1453.3"/>
<polygon fill="black" stroke="black" points="13489.61,-1456.46 13498.01,-1450 13487.42,-1449.81 13489.61,-1456.46"/>
</a>
</g>
</g>
<!-- has_continuous_smul.has_measurable_smul -->
<g id="node216" class="node">
<title>has_continuous_smul.has_measurable_smul</title>
<g id="a_node216"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_smul.has_measurable_smul" xlink:title="has_continuous_smul.has_measurable_smul">
<ellipse fill="black" stroke="black" cx="13410.01" cy="-1448.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_continuous_smul&#45;&gt;has_continuous_smul.has_measurable_smul -->
<g id="edge387" class="edge">
<title>has_continuous_smul&#45;&gt;has_continuous_smul.has_measurable_smul</title>
<g id="a_edge387"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_smul.has_measurable_smul" xlink:title="has_continuous_smul.has_measurable_smul">
<path fill="none" stroke="black" d="M13230.01,-1535.4C13278.01,-1512.8 13371.01,-1468.5 13401.01,-1454.4"/>
<polygon fill="black" stroke="black" points="13402.57,-1457.54 13410.01,-1450 13399.49,-1451.25 13402.57,-1457.54"/>
</a>
</g>
</g>
<!-- has_measurable_mul₂ -->
<g id="node217" class="node">
<title>has_measurable_mul₂</title>
<g id="a_node217"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_mul₂" xlink:title="has_measurable_mul₂">
<polygon fill="none" stroke="black" points="13697.01,-1464 13507.01,-1464 13507.01,-1433 13697.01,-1433 13697.01,-1464"/>
<text text-anchor="middle" x="13602.01" y="-1444.8" font-family="Courier,monospace" font-size="14.00">has_measurable_mul₂</text>
</a>
</g>
</g>
<!-- has_continuous_mul.has_measurable_mul₂&#45;&gt;has_measurable_mul₂ -->
<g id="edge388" class="edge">
<title>has_continuous_mul.has_measurable_mul₂&#45;&gt;has_measurable_mul₂</title>
<g id="a_edge388"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_mul.has_measurable_mul₂" xlink:title="has_continuous_mul.has_measurable_mul₂">
<path fill="none" stroke="black" d="M13694.01,-1548.9C13692.01,-1546.8 13648.01,-1499.7 13622.01,-1471.3"/>
<polygon fill="black" stroke="black" points="13624.4,-1468.72 13615.01,-1463.8 13619.28,-1473.5 13624.4,-1468.72"/>
</a>
</g>
</g>
<!-- is_scalar_tower.has_continuous_const_smul&#45;&gt;has_continuous_const_smul -->
<g id="edge389" class="edge">
<title>is_scalar_tower.has_continuous_const_smul&#45;&gt;has_continuous_const_smul</title>
<g id="a_edge389"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_scalar_tower.has_continuous_const_smul" xlink:title="is_scalar_tower.has_continuous_const_smul">
<path fill="none" stroke="black" d="M14908.01,-1548.9C14909.01,-1548.1 14916.01,-1541 14922.01,-1535.5 14947.01,-1512.8 14976.01,-1487.4 14995.01,-1470.3"/>
<polygon fill="black" stroke="black" points="14997.53,-1472.76 15003.01,-1463.7 14993.07,-1467.36 14997.53,-1472.76"/>
</a>
</g>
</g>
<!-- smul_comm_class.has_continuous_const_smul&#45;&gt;has_continuous_const_smul -->
<g id="edge390" class="edge">
<title>smul_comm_class.has_continuous_const_smul&#45;&gt;has_continuous_const_smul</title>
<g id="a_edge390"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/smul_comm_class.has_continuous_const_smul" xlink:title="smul_comm_class.has_continuous_const_smul">
<path fill="none" stroke="black" d="M14964.01,-1548.9C14965.01,-1546.9 14990.01,-1501.3 15006.01,-1472.7"/>
<polygon fill="black" stroke="black" points="15009.17,-1474.23 15011.01,-1463.8 15003.06,-1470.8 15009.17,-1474.23"/>
</a>
</g>
</g>
<!-- has_measurable_mul -->
<g id="node218" class="node">
<title>has_measurable_mul</title>
<g id="a_node218"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_mul" xlink:title="has_measurable_mul">
<polygon fill="none" stroke="black" points="13388.51,-1363 13223.51,-1363 13223.51,-1332 13388.51,-1332 13388.51,-1363"/>
<text text-anchor="middle" x="13306.01" y="-1343.8" font-family="Courier,monospace" font-size="14.00">has_measurable_mul</text>
</a>
</g>
</g>
<!-- has_continuous_mul.has_measurable_mul&#45;&gt;has_measurable_mul -->
<g id="edge391" class="edge">
<title>has_continuous_mul.has_measurable_mul&#45;&gt;has_measurable_mul</title>
<g id="a_edge391"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_mul.has_measurable_mul" xlink:title="has_continuous_mul.has_measurable_mul">
<path fill="none" stroke="black" d="M13306.01,-1548.9C13306.01,-1544.1 13306.01,-1425 13306.01,-1373"/>
<polygon fill="black" stroke="black" points="13309.51,-1372.7 13306.01,-1362.7 13302.51,-1372.7 13309.51,-1372.7"/>
</a>
</g>
</g>
<!-- proper_space&#45;&gt;locally_compact_space -->
<g id="edge394" class="edge">
<title>proper_space&#45;&gt;locally_compact_space</title>
<g id="a_edge394"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/locally_compact_of_proper" xlink:title="locally_compact_of_proper">
<path fill="none" stroke="black" d="M14458.01,-1851.5C14676.01,-1849.1 15450.01,-1835.7 15685.01,-1766.5 15862.01,-1714.2 15955.01,-1723.9 16049.01,-1564.5 16158.01,-1380.1 15787.01,-1293.9 15598.01,-1262.6"/>
<polygon fill="black" stroke="black" points="15598.44,-1259.12 15588.01,-1261 15597.34,-1266.04 15598.44,-1259.12"/>
</a>
</g>
</g>
<!-- proper_space&#45;&gt;complete_space -->
<g id="edge392" class="edge">
<title>proper_space&#45;&gt;complete_space</title>
<g id="a_edge392"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/complete_of_proper" xlink:title="complete_of_proper">
<path fill="none" stroke="black" d="M14347.01,-1838.4C14275.01,-1820.3 14147.01,-1788.4 14070.01,-1769.1"/>
<polygon fill="black" stroke="black" points="14070.56,-1765.63 14060.01,-1766.6 14068.87,-1772.42 14070.56,-1765.63"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology -->
<g id="node219" class="node">
<title>topological_space.second_countable_topology</title>
<g id="a_node219"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_space.second_countable_topology" xlink:title="topological_space.second_countable_topology">
<polygon fill="none" stroke="black" points="14983.51,-1767 14608.51,-1767 14608.51,-1736 14983.51,-1736 14983.51,-1767"/>
<text text-anchor="middle" x="14796.01" y="-1747.8" font-family="Courier,monospace" font-size="14.00">topological_space.second_countable_topology</text>
</a>
</g>
</g>
<!-- proper_space&#45;&gt;topological_space.second_countable_topology -->
<g id="edge393" class="edge">
<title>proper_space&#45;&gt;topological_space.second_countable_topology</title>
<g id="a_edge393"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/second_countable_of_proper" xlink:title="second_countable_of_proper">
<path fill="none" stroke="black" d="M14455.01,-1838.4C14527.01,-1820.3 14655.01,-1788.4 14732.01,-1769.1"/>
<polygon fill="black" stroke="black" points="14733.16,-1772.42 14742.01,-1766.6 14731.46,-1765.63 14733.16,-1772.42"/>
</a>
</g>
</g>
<!-- seq_compact_space -->
<g id="node220" class="node">
<title>seq_compact_space</title>
<g id="a_node220"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/seq_compact_space" xlink:title="seq_compact_space">
<polygon fill="none" stroke="black" points="11999.51,-1464 11842.51,-1464 11842.51,-1433 11999.51,-1433 11999.51,-1464"/>
<text text-anchor="middle" x="11921.01" y="-1444.8" font-family="Courier,monospace" font-size="14.00">seq_compact_space</text>
</a>
</g>
</g>
<!-- first_countable_topology.seq_compact_of_compact&#45;&gt;seq_compact_space -->
<g id="edge395" class="edge">
<title>first_countable_topology.seq_compact_of_compact&#45;&gt;seq_compact_space</title>
<g id="a_edge395"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_countable_topology.seq_compact_of_compact" xlink:title="first_countable_topology.seq_compact_of_compact">
<path fill="none" stroke="black" d="M12140.01,-1548.9C12140.01,-1547.9 12136.01,-1539.8 12131.01,-1535.5 12089.01,-1501.6 12033.01,-1479.6 11989.01,-1466.4"/>
<polygon fill="black" stroke="black" points="11989.59,-1462.92 11979.01,-1463.5 11987.64,-1469.65 11989.59,-1462.92"/>
</a>
</g>
</g>
<!-- sigma_compact_space&#45;&gt;paracompact_of_locally_compact_sigma_compact -->
<g id="edge396" class="edge">
<title>sigma_compact_space&#45;&gt;paracompact_of_locally_compact_sigma_compact</title>
<g id="a_edge396"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/paracompact_of_locally_compact_sigma_compact" xlink:title="paracompact_of_locally_compact_sigma_compact">
<path fill="none" stroke="black" d="M16196.01,-1040.6C15777.01,-1023.9 13958.01,-951.56 13803.01,-945.4"/>
<polygon fill="black" stroke="black" points="13802.14,-941.86 13792.01,-944.98 13801.87,-948.86 13802.14,-941.86"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular.of_sigma_compact_space_of_is_locally_finite_measure -->
<g id="node221" class="node">
<title>measure_theory.measure.regular.of_sigma_compact_space_of_is_locally_finite_measure</title>
<g id="a_node221"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.of_sigma_compact_space_of_is_locally_finite_measure" xlink:title="measure_theory.measure.regular.of_sigma_compact_space_of_is_locally_finite_measure">
<ellipse fill="black" stroke="black" cx="16237.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- sigma_compact_space&#45;&gt;measure_theory.measure.regular.of_sigma_compact_space_of_is_locally_finite_measure -->
<g id="edge397" class="edge">
<title>sigma_compact_space&#45;&gt;measure_theory.measure.regular.of_sigma_compact_space_of_is_locally_finite_measure</title>
<g id="a_edge397"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.of_sigma_compact_space_of_is_locally_finite_measure" xlink:title="measure_theory.measure.regular.of_sigma_compact_space_of_is_locally_finite_measure">
<path fill="none" stroke="black" d="M16276.01,-1030.2C16266.01,-1009.7 16249.01,-971.76 16241.01,-954.26"/>
<polygon fill="black" stroke="black" points="16244.24,-952.9 16237.01,-945.15 16237.83,-955.71 16244.24,-952.9"/>
</a>
</g>
</g>
<!-- measure_theory.measure.weakly_regular.of_pseudo_emetric_sigma_compact_space_of_locally_finite -->
<g id="node222" class="node">
<title>measure_theory.measure.weakly_regular.of_pseudo_emetric_sigma_compact_space_of_locally_finite</title>
<g id="a_node222"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.weakly_regular.of_pseudo_emetric_sigma_compact_space_of_locally_finite" xlink:title="measure_theory.measure.weakly_regular.of_pseudo_emetric_sigma_compact_space_of_locally_finite">
<ellipse fill="black" stroke="black" cx="16040.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- sigma_compact_space&#45;&gt;measure_theory.measure.weakly_regular.of_pseudo_emetric_sigma_compact_space_of_locally_finite -->
<g id="edge398" class="edge">
<title>sigma_compact_space&#45;&gt;measure_theory.measure.weakly_regular.of_pseudo_emetric_sigma_compact_space_of_locally_finite</title>
<g id="a_edge398"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.weakly_regular.of_pseudo_emetric_sigma_compact_space_of_locally_finite" xlink:title="measure_theory.measure.weakly_regular.of_pseudo_emetric_sigma_compact_space_of_locally_finite">
<path fill="none" stroke="black" d="M16249.01,-1030.4C16193.01,-1007.6 16083.01,-962.62 16050.01,-948.99"/>
<polygon fill="black" stroke="black" points="16050.6,-945.46 16040.01,-945.02 16048.02,-951.96 16050.6,-945.46"/>
</a>
</g>
</g>
<!-- sigma_compact_space&#45;&gt;measure_theory.measure.regular.sigma_finite -->
<g id="edge399" class="edge">
<title>sigma_compact_space&#45;&gt;measure_theory.measure.regular.sigma_finite</title>
<g id="a_edge399"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.sigma_finite" xlink:title="measure_theory.measure.regular.sigma_finite">
<path fill="none" stroke="black" d="M16287.01,-1030.3C16307.01,-978.64 16376.01,-796.72 16392.01,-752.65"/>
<polygon fill="black" stroke="black" points="16395.36,-753.72 16396.01,-743.15 16388.91,-751.01 16395.36,-753.72"/>
</a>
</g>
</g>
<!-- measure_theory.measure.is_haar_measure.sigma_finite -->
<g id="node224" class="node">
<title>measure_theory.measure.is_haar_measure.sigma_finite</title>
<g id="a_node224"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_haar_measure.sigma_finite" xlink:title="measure_theory.measure.is_haar_measure.sigma_finite">
<ellipse fill="black" stroke="black" cx="16528.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- sigma_compact_space&#45;&gt;measure_theory.measure.is_haar_measure.sigma_finite -->
<g id="edge400" class="edge">
<title>sigma_compact_space&#45;&gt;measure_theory.measure.is_haar_measure.sigma_finite</title>
<g id="a_edge400"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_haar_measure.sigma_finite" xlink:title="measure_theory.measure.is_haar_measure.sigma_finite">
<path fill="none" stroke="black" d="M16318.01,-1030.4C16362.01,-1014.1 16436.01,-985.48 16499.01,-958.48 16506.01,-955.59 16513.01,-952.1 16519.01,-949.39"/>
<polygon fill="black" stroke="black" points="16520.56,-952.53 16528.01,-945 16517.49,-946.24 16520.56,-952.53"/>
</a>
</g>
</g>
<!-- measure_theory.measure.is_add_haar_measure.sigma_finite -->
<g id="node225" class="node">
<title>measure_theory.measure.is_add_haar_measure.sigma_finite</title>
<g id="a_node225"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_add_haar_measure.sigma_finite" xlink:title="measure_theory.measure.is_add_haar_measure.sigma_finite">
<ellipse fill="black" stroke="black" cx="16490.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- sigma_compact_space&#45;&gt;measure_theory.measure.is_add_haar_measure.sigma_finite -->
<g id="edge401" class="edge">
<title>sigma_compact_space&#45;&gt;measure_theory.measure.is_add_haar_measure.sigma_finite</title>
<g id="a_edge401"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_add_haar_measure.sigma_finite" xlink:title="measure_theory.measure.is_add_haar_measure.sigma_finite">
<path fill="none" stroke="black" d="M16310.01,-1030.4C16358.01,-1007.8 16451.01,-963.44 16481.01,-949.37"/>
<polygon fill="black" stroke="black" points="16482.53,-952.52 16490.01,-945.02 16479.49,-946.22 16482.53,-952.52"/>
</a>
</g>
</g>
<!-- complete_space&#45;&gt;baire_space -->
<g id="edge403" class="edge">
<title>complete_space&#45;&gt;baire_space</title>
<g id="a_edge403"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/baire_category_theorem_emetric_complete" xlink:title="baire_category_theorem_emetric_complete">
<path fill="none" stroke="black" d="M13941.01,-1748.9C13720.01,-1741.4 13004.01,-1713.6 12913.01,-1665.5 12811.01,-1611.7 12807.01,-1564.2 12751.01,-1463.5 12728.01,-1421.9 12726.01,-1409 12716.01,-1362.5 12695.01,-1261.7 12647.01,-1218.8 12701.01,-1131.5 12715.01,-1108.6 12780.01,-1080.8 12826.01,-1063.2"/>
<polygon fill="black" stroke="black" points="12827.79,-1066.28 12836.01,-1059.6 12825.42,-1059.69 12827.79,-1066.28"/>
</a>
</g>
</g>
<!-- polish_space_of_complete_second_countable -->
<g id="node226" class="node">
<title>polish_space_of_complete_second_countable</title>
<g id="a_node226"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/polish_space_of_complete_second_countable" xlink:title="polish_space_of_complete_second_countable">
<ellipse fill="black" stroke="black" cx="15075.01" cy="-1651.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- complete_space&#45;&gt;polish_space_of_complete_second_countable -->
<g id="edge402" class="edge">
<title>complete_space&#45;&gt;polish_space_of_complete_second_countable</title>
<g id="a_edge402"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/polish_space_of_complete_second_countable" xlink:title="polish_space_of_complete_second_countable">
<path fill="none" stroke="black" d="M14071.01,-1747C14265.01,-1734.8 14838.01,-1697 15023.01,-1665.5 15038.01,-1662.9 15055.01,-1658.2 15065.01,-1655.1"/>
<polygon fill="black" stroke="black" points="15066.5,-1658.3 15075.01,-1652 15064.43,-1651.62 15066.5,-1658.3"/>
</a>
</g>
</g>
<!-- topological_ring&#45;&gt;topological_add_group -->
<g id="edge404" class="edge">
<title>topological_ring&#45;&gt;topological_add_group</title>
<g id="a_edge404"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_ring.to_topological_add_group" xlink:title="topological_ring.to_topological_add_group">
<path fill="none" stroke="black" d="M12584.01,-1838.4C12549.01,-1821 12488.01,-1790.7 12449.01,-1771.2"/>
<polygon fill="black" stroke="black" points="12450.51,-1768.03 12440.01,-1766.6 12447.33,-1774.27 12450.51,-1768.03"/>
</a>
</g>
</g>
<!-- topological_ring&#45;&gt;has_continuous_neg -->
<g id="edge405" class="edge">
<title>topological_ring&#45;&gt;has_continuous_neg</title>
<g id="a_edge405"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_ring.to_has_continuous_neg" xlink:title="topological_ring.to_has_continuous_neg">
<path fill="none" stroke="black" d="M12537.01,-1839.9C12396.01,-1816.6 12100.01,-1767.9 12098.01,-1766.5 12059.01,-1744.5 12028.01,-1700.9 12012.01,-1674.3"/>
<polygon fill="black" stroke="black" points="12015.03,-1672.53 12007.01,-1665.6 12008.96,-1676.01 12015.03,-1672.53"/>
</a>
</g>
</g>
<!-- topological_ring&#45;&gt;has_continuous_smul -->
<g id="edge406" class="edge">
<title>topological_ring&#45;&gt;has_continuous_smul</title>
<g id="a_edge406"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/module_filter_basis.has_continuous_smul" xlink:title="module_filter_basis.has_continuous_smul">
<path fill="none" stroke="black" d="M12595.01,-1838.4C12571.01,-1816 12529.01,-1770.5 12554.01,-1737.5 12621.01,-1649 12943.01,-1589.5 13106.01,-1564.4"/>
<polygon fill="black" stroke="black" points="13106.64,-1567.84 13116.01,-1562.9 13105.61,-1560.92 13106.64,-1567.84"/>
</a>
</g>
</g>
<!-- topological_semiring -->
<g id="node227" class="node">
<title>topological_semiring</title>
<g id="a_node227"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_semiring" xlink:title="topological_semiring">
<polygon fill="none" stroke="black" points="12744.01,-1767 12562.01,-1767 12562.01,-1736 12744.01,-1736 12744.01,-1767"/>
<text text-anchor="middle" x="12653.01" y="-1747.8" font-family="Courier,monospace" font-size="14.00">topological_semiring</text>
</a>
</g>
</g>
<!-- topological_ring&#45;&gt;topological_semiring -->
<g id="edge407" class="edge">
<title>topological_ring&#45;&gt;topological_semiring</title>
<g id="a_edge407"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_ring.to_topological_semiring" xlink:title="topological_ring.to_topological_semiring">
<path fill="none" stroke="black" d="M12617.01,-1838.2C12624.01,-1822.1 12635.01,-1795.2 12643.01,-1775.9"/>
<polygon fill="black" stroke="black" points="12646.28,-1777.17 12647.01,-1766.6 12639.85,-1774.4 12646.28,-1777.17"/>
</a>
</g>
</g>
<!-- has_continuous_inv₀&#45;&gt;has_continuous_inv₀.has_measurable_inv -->
<g id="edge408" class="edge">
<title>has_continuous_inv₀&#45;&gt;has_continuous_inv₀.has_measurable_inv</title>
<g id="a_edge408"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_inv₀.has_measurable_inv" xlink:title="has_continuous_inv₀.has_measurable_inv">
<path fill="none" stroke="black" d="M12879.01,-1737.4C12846.01,-1724.6 12803.01,-1701.9 12783.01,-1665.5 12749.01,-1605.1 12834.01,-1556.8 12867.01,-1535.5 12972.01,-1468.4 13019.01,-1500 13138.01,-1463.5 13306.01,-1412 13343.01,-1385 13511.01,-1333.5 13632.01,-1296.3 13782.01,-1259.9 13822.01,-1250.4"/>
<polygon fill="black" stroke="black" points="13823.11,-1253.74 13832.01,-1248 13821.47,-1246.93 13823.11,-1253.74"/>
</a>
</g>
</g>
<!-- filter.ne_bot&#45;&gt;measure_theory.measure.is_haar_measure.has_no_atoms -->
<g id="edge409" class="edge">
<title>filter.ne_bot&#45;&gt;measure_theory.measure.is_haar_measure.has_no_atoms</title>
<g id="a_edge409"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_haar_measure.has_no_atoms" xlink:title="measure_theory.measure.is_haar_measure.has_no_atoms">
<path fill="none" stroke="black" d="M14832.01,-929.73C14942.01,-905.84 15168.01,-857.01 15218.01,-846.15"/>
<polygon fill="black" stroke="black" points="15218.98,-849.52 15228.01,-843.99 15217.5,-842.68 15218.98,-849.52"/>
</a>
</g>
</g>
<!-- filter.ne_bot&#45;&gt;measure_theory.measure.is_add_haar_measure.has_no_atoms -->
<g id="edge410" class="edge">
<title>filter.ne_bot&#45;&gt;measure_theory.measure.is_add_haar_measure.has_no_atoms</title>
<g id="a_edge410"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_add_haar_measure.has_no_atoms" xlink:title="measure_theory.measure.is_add_haar_measure.has_no_atoms">
<path fill="none" stroke="black" d="M14710.01,-936.21C14523.01,-915.56 13968.01,-854.15 13886.01,-845.1"/>
<polygon fill="black" stroke="black" points="13886.34,-841.61 13876.01,-843.99 13885.57,-848.57 13886.34,-841.61"/>
</a>
</g>
</g>
<!-- filter.ne_bot&#45;&gt;filter.ne_bot -->
<g id="edge411" class="edge">
<title>filter.ne_bot&#45;&gt;filter.ne_bot</title>
<g id="a_edge411"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.map_ne_bot" xlink:title="filter.map_ne_bot">
<path fill="none" stroke="black" d="M14796.01,-958.61C14822.01,-967.22 14850.01,-962.34 14850.01,-943.98 14850.01,-927.99 14828.01,-922.23 14806.01,-926.69"/>
<polygon fill="black" stroke="black" points="14804.78,-923.4 14796.01,-929.35 14806.58,-930.16 14804.78,-923.4"/>
</a>
</g>
</g>
<!-- real.punctured_nhds_module_ne_bot&#45;&gt;filter.ne_bot -->
<g id="edge700" class="edge">
<title>real.punctured_nhds_module_ne_bot&#45;&gt;filter.ne_bot</title>
<g id="a_edge700"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/real.punctured_nhds_module_ne_bot" xlink:title="real.punctured_nhds_module_ne_bot">
<path fill="none" stroke="black" d="M13744.01,-1448C13750.01,-1445.9 13941.01,-1380.2 14096.01,-1333.5 14130.01,-1323.2 14689.01,-1185.9 14714.01,-1160.5 14766.01,-1107.5 14772.01,-1012.6 14772.01,-968.58"/>
<polygon fill="black" stroke="black" points="14775.51,-968.55 14772.01,-958.55 14768.51,-968.55 14775.51,-968.55"/>
</a>
</g>
</g>
<!-- contractible_space -->
<g id="node485" class="node">
<title>contractible_space</title>
<g id="a_node485"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/contractible_space" xlink:title="contractible_space">
<polygon fill="none" stroke="black" points="11377.51,-1363 11212.51,-1363 11212.51,-1332 11377.51,-1332 11377.51,-1363"/>
<text text-anchor="middle" x="11295.01" y="-1343.8" font-family="Courier,monospace" font-size="14.00">contractible_space</text>
</a>
</g>
</g>
<!-- real_topological_vector_space.contractible_space&#45;&gt;contractible_space -->
<g id="edge941" class="edge">
<title>real_topological_vector_space.contractible_space&#45;&gt;contractible_space</title>
<g id="a_edge941"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/real_topological_vector_space.contractible_space" xlink:title="real_topological_vector_space.contractible_space">
<path fill="none" stroke="black" d="M11749.01,-1447.9C11749.01,-1446.8 11745.01,-1438.2 11739.01,-1434.5 11682.01,-1398.3 11499.01,-1372 11387.01,-1358.7"/>
<polygon fill="black" stroke="black" points="11387.34,-1355.21 11377.01,-1357.6 11386.57,-1362.17 11387.34,-1355.21"/>
</a>
</g>
</g>
<!-- has_continuous_const_vadd -->
<g id="node486" class="node">
<title>has_continuous_const_vadd</title>
<g id="a_node486"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_const_vadd" xlink:title="has_continuous_const_vadd">
<polygon fill="none" stroke="black" points="11732.01,-1464 11508.01,-1464 11508.01,-1433 11732.01,-1433 11732.01,-1464"/>
<text text-anchor="middle" x="11620.01" y="-1444.8" font-family="Courier,monospace" font-size="14.00">has_continuous_const_vadd</text>
</a>
</g>
</g>
<!-- has_continuous_vadd&#45;&gt;has_continuous_const_vadd -->
<g id="edge942" class="edge">
<title>has_continuous_vadd&#45;&gt;has_continuous_const_vadd</title>
<g id="a_edge942"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_vadd.has_continuous_const_vadd" xlink:title="has_continuous_vadd.has_continuous_const_vadd">
<path fill="none" stroke="black" d="M11841.01,-1535.4C11795.01,-1517.7 11715.01,-1486.7 11665.01,-1467.3"/>
<polygon fill="black" stroke="black" points="11665.61,-1463.79 11655.01,-1463.6 11663.18,-1470.35 11665.61,-1463.79"/>
</a>
</g>
</g>
<!-- has_measurable_add -->
<g id="node487" class="node">
<title>has_measurable_add</title>
<g id="a_node487"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_add" xlink:title="has_measurable_add">
<polygon fill="none" stroke="black" points="11859.51,-1363 11694.51,-1363 11694.51,-1332 11859.51,-1332 11859.51,-1363"/>
<text text-anchor="middle" x="11777.01" y="-1343.8" font-family="Courier,monospace" font-size="14.00">has_measurable_add</text>
</a>
</g>
</g>
<!-- has_continuous_add.has_measurable_add&#45;&gt;has_measurable_add -->
<g id="edge943" class="edge">
<title>has_continuous_add.has_measurable_add&#45;&gt;has_measurable_add</title>
<g id="a_edge943"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_add.has_measurable_add" xlink:title="has_continuous_add.has_measurable_add">
<path fill="none" stroke="black" d="M12104.01,-1549C12097.01,-1547.6 11881.01,-1503.8 11834.01,-1463.5 11806.01,-1439.5 11790.01,-1398.4 11783.01,-1372.6"/>
<polygon fill="black" stroke="black" points="11786.29,-1371.34 11780.01,-1362.8 11779.59,-1373.39 11786.29,-1371.34"/>
</a>
</g>
</g>
<!-- has_measurable_add₂ -->
<g id="node488" class="node">
<title>has_measurable_add₂</title>
<g id="a_node488"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_add₂" xlink:title="has_measurable_add₂">
<polygon fill="none" stroke="black" points="12561.01,-1464 12371.01,-1464 12371.01,-1433 12561.01,-1433 12561.01,-1464"/>
<text text-anchor="middle" x="12466.01" y="-1444.8" font-family="Courier,monospace" font-size="14.00">has_measurable_add₂</text>
</a>
</g>
</g>
<!-- has_continuous_add.has_measurable_mul₂&#45;&gt;has_measurable_add₂ -->
<g id="edge944" class="edge">
<title>has_continuous_add.has_measurable_mul₂&#45;&gt;has_measurable_add₂</title>
<g id="a_edge944"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_add.has_measurable_mul₂" xlink:title="has_continuous_add.has_measurable_mul₂">
<path fill="none" stroke="black" d="M12876.01,-1549C12871.01,-1547.8 12647.01,-1493.6 12532.01,-1465.9"/>
<polygon fill="black" stroke="black" points="12532.54,-1462.43 12522.01,-1463.6 12530.98,-1469.25 12532.54,-1462.43"/>
</a>
</g>
</g>
<!-- measure_theory.measure.neg.measure_theory.sigma_finite -->
<g id="node482" class="node">
<title>measure_theory.measure.neg.measure_theory.sigma_finite</title>
<g id="a_node482"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.neg.measure_theory.sigma_finite" xlink:title="measure_theory.measure.neg.measure_theory.sigma_finite">
<ellipse fill="black" stroke="black" cx="16448.01" cy="-539.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_measurable_neg&#45;&gt;measure_theory.measure.neg.measure_theory.sigma_finite -->
<g id="edge1061" class="edge">
<title>has_measurable_neg&#45;&gt;measure_theory.measure.neg.measure_theory.sigma_finite</title>
<g id="a_edge1061"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.neg.measure_theory.sigma_finite" xlink:title="measure_theory.measure.neg.measure_theory.sigma_finite">
<path fill="none" stroke="black" d="M12180.01,-1435.5C12183.01,-1435.2 12186.01,-1434.8 12189.01,-1434.5 12724.01,-1379 12865.01,-1444.6 13396.01,-1362.5 13448.01,-1354.5 13459.01,-1342.2 13511.01,-1333.5 13882.01,-1271.3 13985.01,-1328.8 14355.01,-1261.5 14518.01,-1231.9 14573.01,-1248.3 14714.01,-1160.5 14921.01,-1031.4 14836.01,-843.99 15050.01,-727.48 15268.01,-608.5 15924.01,-707.32 16167.01,-655.48 16293.01,-628.6 16338.01,-634.47 16439.01,-554.48 16441.01,-553.23 16442.01,-551.64 16443.01,-549.98"/>
<polygon fill="black" stroke="black" points="16446.17,-551.51 16448.01,-541.08 16440.06,-548.08 16446.17,-551.51"/>
</a>
</g>
</g>
<!-- measure_theory.measure.neg.is_add_right_invariant -->
<g id="node489" class="node">
<title>measure_theory.measure.neg.is_add_right_invariant</title>
<g id="a_node489"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.neg.is_add_right_invariant" xlink:title="measure_theory.measure.neg.is_add_right_invariant">
<ellipse fill="black" stroke="black" cx="11726.01" cy="-1246.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_measurable_neg&#45;&gt;measure_theory.measure.neg.is_add_right_invariant -->
<g id="edge1062" class="edge">
<title>has_measurable_neg&#45;&gt;measure_theory.measure.neg.is_add_right_invariant</title>
<g id="a_edge1062"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.neg.is_add_right_invariant" xlink:title="measure_theory.measure.neg.is_add_right_invariant">
<path fill="none" stroke="black" d="M12071.01,-1434.5C11989.01,-1393.7 11749.01,-1274 11735.01,-1261.5 11734.01,-1260.2 11732.01,-1258.5 11731.01,-1256.9"/>
<polygon fill="black" stroke="black" points="11734,-1255.07 11726.01,-1248.1 11727.91,-1258.52 11734,-1255.07"/>
</a>
</g>
</g>
<!-- measure_theory.measure.neg.is_add_left_invariant -->
<g id="node490" class="node">
<title>measure_theory.measure.neg.is_add_left_invariant</title>
<g id="a_node490"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.neg.is_add_left_invariant" xlink:title="measure_theory.measure.neg.is_add_left_invariant">
<ellipse fill="black" stroke="black" cx="11860.01" cy="-1044.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_measurable_neg&#45;&gt;measure_theory.measure.neg.is_add_left_invariant -->
<g id="edge1063" class="edge">
<title>has_measurable_neg&#45;&gt;measure_theory.measure.neg.is_add_left_invariant</title>
<g id="a_edge1063"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.neg.is_add_left_invariant" xlink:title="measure_theory.measure.neg.is_add_left_invariant">
<path fill="none" stroke="black" d="M12016.01,-1434.8C11900.01,-1415.5 11697.01,-1380 11667.01,-1362.5 11565.01,-1302.8 11536.01,-1271.2 11495.01,-1160.5 11491.01,-1148.4 11487.01,-1141.6 11495.01,-1131.5 11541.01,-1073.3 11795.01,-1050.9 11850.01,-1046.7"/>
<polygon fill="black" stroke="black" points="11850.28,-1050.19 11860.01,-1046 11849.79,-1043.21 11850.28,-1050.19"/>
</a>
</g>
</g>
<!-- has_measurable_sub_of_add_neg -->
<g id="node491" class="node">
<title>has_measurable_sub_of_add_neg</title>
<g id="a_node491"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_sub_of_add_neg" xlink:title="has_measurable_sub_of_add_neg">
<ellipse fill="black" stroke="black" cx="11667.01" cy="-1246.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_measurable_neg&#45;&gt;has_measurable_sub_of_add_neg -->
<g id="edge1064" class="edge">
<title>has_measurable_neg&#45;&gt;has_measurable_sub_of_add_neg</title>
<g id="a_edge1064"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_sub_of_add_neg" xlink:title="has_measurable_sub_of_add_neg">
<path fill="none" stroke="black" d="M12022.01,-1434.5C11906.01,-1413.6 11698.01,-1374.6 11686.01,-1362.5 11658.01,-1333.5 11662.01,-1280 11665.01,-1257.9"/>
<polygon fill="black" stroke="black" points="11668.44,-1258.6 11667.01,-1248.1 11661.59,-1257.2 11668.44,-1258.6"/>
</a>
</g>
</g>
<!-- has_measurable_div₂_of_add_neg -->
<g id="node493" class="node">
<title>has_measurable_div₂_of_add_neg</title>
<g id="a_node493"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_div₂_of_add_neg" xlink:title="has_measurable_div₂_of_add_neg">
<ellipse fill="black" stroke="black" cx="12494.01" cy="-1347.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_measurable_neg&#45;&gt;has_measurable_div₂_of_add_neg -->
<g id="edge1065" class="edge">
<title>has_measurable_neg&#45;&gt;has_measurable_div₂_of_add_neg</title>
<g id="a_edge1065"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_div₂_of_add_neg" xlink:title="has_measurable_div₂_of_add_neg">
<path fill="none" stroke="black" d="M12173.01,-1434.5C12279.01,-1415.2 12459.01,-1380 12485.01,-1362.5 12487.01,-1361.4 12488.01,-1359.8 12489.01,-1358.2"/>
<polygon fill="black" stroke="black" points="12492.27,-1359.55 12494.01,-1349.1 12486.13,-1356.18 12492.27,-1359.55"/>
</a>
</g>
</g>
<!-- has_measurable_sub₂ -->
<g id="node520" class="node">
<title>has_measurable_sub₂</title>
<g id="a_node520"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_sub₂" xlink:title="has_measurable_sub₂">
<polygon fill="none" stroke="black" points="12133.01,-1262 11943.01,-1262 11943.01,-1231 12133.01,-1231 12133.01,-1262"/>
<text text-anchor="middle" x="12038.01" y="-1242.8" font-family="Courier,monospace" font-size="14.00">has_measurable_sub₂</text>
</a>
</g>
</g>
<!-- has_continuous_sub.has_measurable_sub₂&#45;&gt;has_measurable_sub₂ -->
<g id="edge1024" class="edge">
<title>has_continuous_sub.has_measurable_sub₂&#45;&gt;has_measurable_sub₂</title>
<g id="a_edge1024"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_sub.has_measurable_sub₂" xlink:title="has_continuous_sub.has_measurable_sub₂">
<path fill="none" stroke="black" d="M12945.01,-1549C12942.01,-1547.6 12835.01,-1503.8 12751.01,-1463.5 12639.01,-1409.5 12621.01,-1374.1 12503.01,-1333.5 12436.01,-1310.5 12249.01,-1279.8 12134.01,-1262.1"/>
<polygon fill="black" stroke="black" points="12134.42,-1258.62 12124.01,-1260.6 12133.38,-1265.54 12134.42,-1258.62"/>
</a>
</g>
</g>
<!-- has_measurable_sub -->
<g id="node525" class="node">
<title>has_measurable_sub</title>
<g id="a_node525"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_sub" xlink:title="has_measurable_sub">
<polygon fill="none" stroke="black" points="11668.51,-1161 11503.51,-1161 11503.51,-1130 11668.51,-1130 11668.51,-1161"/>
<text text-anchor="middle" x="11586.01" y="-1141.8" font-family="Courier,monospace" font-size="14.00">has_measurable_sub</text>
</a>
</g>
</g>
<!-- has_continuous_sub.has_measurable_sub&#45;&gt;has_measurable_sub -->
<g id="edge1066" class="edge">
<title>has_continuous_sub.has_measurable_sub&#45;&gt;has_measurable_sub</title>
<g id="a_edge1066"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_sub.has_measurable_sub" xlink:title="has_continuous_sub.has_measurable_sub">
<path fill="none" stroke="black" d="M12122.01,-1548.9C12122.01,-1547.9 12119.01,-1539.4 12113.01,-1535.5 12009.01,-1461.3 11952.01,-1513.2 11834.01,-1463.5 11754.01,-1429.9 11722.01,-1429.2 11667.01,-1362.5 11618.01,-1304 11597.01,-1213.3 11590.01,-1170.7"/>
<polygon fill="black" stroke="black" points="11593.41,-1169.82 11588.01,-1160.7 11586.54,-1171.19 11593.41,-1169.82"/>
</a>
</g>
</g>
<!-- has_measurable_smul₂ -->
<g id="node495" class="node">
<title>has_measurable_smul₂</title>
<g id="a_node495"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_smul₂" xlink:title="has_measurable_smul₂">
<polygon fill="none" stroke="black" points="13709.51,-1363 13510.51,-1363 13510.51,-1332 13709.51,-1332 13709.51,-1363"/>
<text text-anchor="middle" x="13610.01" y="-1343.8" font-family="Courier,monospace" font-size="14.00">has_measurable_smul₂</text>
</a>
</g>
</g>
<!-- has_continuous_smul.has_measurable_smul₂&#45;&gt;has_measurable_smul₂ -->
<g id="edge952" class="edge">
<title>has_continuous_smul.has_measurable_smul₂&#45;&gt;has_measurable_smul₂</title>
<g id="a_edge952"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_smul.has_measurable_smul₂" xlink:title="has_continuous_smul.has_measurable_smul₂">
<path fill="none" stroke="black" d="M13498.01,-1447.9C13499.01,-1447 13502.01,-1439.5 13507.01,-1434.5 13530.01,-1409.2 13560.01,-1384.8 13582.01,-1368.6"/>
<polygon fill="black" stroke="black" points="13584.11,-1371.4 13590.01,-1362.6 13579.91,-1365.8 13584.11,-1371.4"/>
</a>
</g>
</g>
<!-- has_measurable_smul -->
<g id="node478" class="node">
<title>has_measurable_smul</title>
<g id="a_node478"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_smul" xlink:title="has_measurable_smul">
<polygon fill="none" stroke="black" points="13579.01,-1262 13405.01,-1262 13405.01,-1231 13579.01,-1231 13579.01,-1262"/>
<text text-anchor="middle" x="13492.01" y="-1242.8" font-family="Courier,monospace" font-size="14.00">has_measurable_smul</text>
</a>
</g>
</g>
<!-- has_continuous_smul.has_measurable_smul&#45;&gt;has_measurable_smul -->
<g id="edge953" class="edge">
<title>has_continuous_smul.has_measurable_smul&#45;&gt;has_measurable_smul</title>
<g id="a_edge953"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_smul.has_measurable_smul" xlink:title="has_continuous_smul.has_measurable_smul">
<path fill="none" stroke="black" d="M13410.01,-1447.9C13412.01,-1443.1 13461.01,-1322.5 13483.01,-1271"/>
<polygon fill="black" stroke="black" points="13486.27,-1272.29 13486.01,-1261.7 13479.61,-1270.14 13486.27,-1272.29"/>
</a>
</g>
</g>
<!-- has_measurable_mul₂&#45;&gt;has_measurable_div₂_of_mul_inv -->
<g id="edge1037" class="edge">
<title>has_measurable_mul₂&#45;&gt;has_measurable_div₂_of_mul_inv</title>
<g id="a_edge1037"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_div₂_of_mul_inv" xlink:title="has_measurable_div₂_of_mul_inv">
<path fill="none" stroke="black" d="M13632.01,-1434.5C13671.01,-1415.1 13730.01,-1377 13709.01,-1333.5 13679.01,-1269.6 13649.01,-1264.9 13586.01,-1232.5 13477.01,-1176.4 13394.01,-1257.8 13320.01,-1160.5 13312.01,-1150.3 13314.01,-1142.8 13320.01,-1131.5 13335.01,-1105.3 13420.01,-1063.6 13449.01,-1050.3"/>
<polygon fill="black" stroke="black" points="13450.5,-1053.47 13458.01,-1046 13447.48,-1047.15 13450.5,-1053.47"/>
</a>
</g>
</g>
<!-- has_measurable_mul₂&#45;&gt;has_measurable_mul -->
<g id="edge1036" class="edge">
<title>has_measurable_mul₂&#45;&gt;has_measurable_mul</title>
<g id="a_edge1036"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_mul₂.to_has_measurable_mul" xlink:title="has_measurable_mul₂.to_has_measurable_mul">
<path fill="none" stroke="black" d="M13561.01,-1434.4C13508.01,-1416.6 13414.01,-1385.1 13356.01,-1365.8"/>
<polygon fill="black" stroke="black" points="13357.61,-1362.65 13347.01,-1362.6 13355.26,-1369.25 13357.61,-1362.65"/>
</a>
</g>
</g>
<!-- has_measurable_mul₂&#45;&gt;has_measurable_smul₂ -->
<g id="edge1038" class="edge">
<title>has_measurable_mul₂&#45;&gt;has_measurable_smul₂</title>
<g id="a_edge1038"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_smul₂_of_mul" xlink:title="has_measurable_smul₂_of_mul">
<path fill="none" stroke="black" d="M13603.01,-1434.2C13604.01,-1418.3 13607.01,-1392 13608.01,-1372.7"/>
<polygon fill="black" stroke="black" points="13611.51,-1372.9 13609.01,-1362.6 13604.55,-1372.21 13611.51,-1372.9"/>
</a>
</g>
</g>
<!-- has_measurable_mul&#45;&gt;measure_theory.measure.inv.is_mul_right_invariant -->
<g id="edge918" class="edge">
<title>has_measurable_mul&#45;&gt;measure_theory.measure.inv.is_mul_right_invariant</title>
<g id="a_edge918"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.inv.is_mul_right_invariant" xlink:title="measure_theory.measure.inv.is_mul_right_invariant">
<path fill="none" stroke="black" d="M13292.01,-1333.5C13277.01,-1317.8 13253.01,-1290.5 13244.01,-1261.5 13226.01,-1206.5 13215.01,-1181.2 13244.01,-1131.5 13261.01,-1103 13359.01,-1062.2 13390.01,-1049.7"/>
<polygon fill="black" stroke="black" points="13391.85,-1052.75 13400.01,-1046 13389.42,-1046.19 13391.85,-1052.75"/>
</a>
</g>
</g>
<!-- has_measurable_mul&#45;&gt;measure_theory.measure.inv.is_mul_left_invariant -->
<g id="edge919" class="edge">
<title>has_measurable_mul&#45;&gt;measure_theory.measure.inv.is_mul_left_invariant</title>
<g id="a_edge919"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.inv.is_mul_left_invariant" xlink:title="measure_theory.measure.inv.is_mul_left_invariant">
<path fill="none" stroke="black" d="M13292.01,-1333.3C13276.01,-1317.1 13250.01,-1288.9 13231.01,-1261.5 13194.01,-1207.7 13217.01,-1168.2 13163.01,-1131.5 13037.01,-1046 12585.01,-1172.5 12483.01,-1059.5 12460.01,-1034.4 12466.01,-997.8 12509.01,-929.48 12534.01,-890.26 12583.01,-860.17 12603.01,-848.86"/>
<polygon fill="black" stroke="black" points="12604.87,-851.84 12612.01,-844.01 12601.55,-845.67 12604.87,-851.84"/>
</a>
</g>
</g>
<!-- has_measurable_mul&#45;&gt;has_measurable_div_of_mul_inv -->
<g id="edge921" class="edge">
<title>has_measurable_mul&#45;&gt;has_measurable_div_of_mul_inv</title>
<g id="a_edge921"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_div_of_mul_inv" xlink:title="has_measurable_div_of_mul_inv">
<path fill="none" stroke="black" d="M13299.01,-1333.5C13282.01,-1297.7 13243.01,-1198.7 13282.01,-1131.5 13315.01,-1075.4 13361.01,-1103.7 13409.01,-1059.5 13410.01,-1058.1 13412.01,-1056.5 13413.01,-1054.8"/>
<polygon fill="black" stroke="black" points="13416.07,-1056.51 13418.01,-1046.1 13410,-1053.03 13416.07,-1056.51"/>
</a>
</g>
</g>
<!-- has_measurable_mul&#45;&gt;has_measurable_smul -->
<g id="edge920" class="edge">
<title>has_measurable_mul&#45;&gt;has_measurable_smul</title>
<g id="a_edge920"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_smul_of_mul" xlink:title="has_measurable_smul_of_mul">
<path fill="none" stroke="black" d="M13331.01,-1333.4C13364.01,-1316.1 13421.01,-1285.9 13457.01,-1266.5"/>
<polygon fill="black" stroke="black" points="13459.57,-1269.14 13467.01,-1261.6 13456.49,-1262.86 13459.57,-1269.14"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;measure_theory.measure.regular_of_is_haar_measure -->
<g id="edge576" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;measure_theory.measure.regular_of_is_haar_measure</title>
<g id="a_edge576"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular_of_is_haar_measure" xlink:title="measure_theory.measure.regular_of_is_haar_measure">
<path fill="none" stroke="black" d="M14869.01,-1737.4C14940.01,-1723.3 15048.01,-1698.6 15139.01,-1665.5 15166.01,-1655.5 15170.01,-1644.3 15198.01,-1636.5 15377.01,-1586.6 15906.01,-1701.6 16032.01,-1564.5 16041.01,-1555 16038.01,-1547.1 16032.01,-1535.5 15944.01,-1356.9 15784.01,-1430.1 15678.01,-1261.5 15657.01,-1227.6 15654.01,-1178.1 15654.01,-1157.1"/>
<polygon fill="black" stroke="black" points="15657.51,-1157.1 15654.01,-1147.1 15650.51,-1157.1 15657.51,-1157.1"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;measure_theory.measure.regular_of_is_add_haar_measure -->
<g id="edge577" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;measure_theory.measure.regular_of_is_add_haar_measure</title>
<g id="a_edge577"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular_of_is_add_haar_measure" xlink:title="measure_theory.measure.regular_of_is_add_haar_measure">
<path fill="none" stroke="black" d="M14845.01,-1737.4C14902.01,-1721.2 15000.01,-1692.8 15084.01,-1665.5 15120.01,-1653.6 15129.01,-1648.3 15165.01,-1636.5 15274.01,-1601.1 15343.01,-1655.2 15413.01,-1564.5 15476.01,-1483.3 15438.01,-1434.4 15419.01,-1333.5 15410.01,-1287.7 15366.01,-1271.8 15391.01,-1232.5 15432.01,-1168.5 15483.01,-1203.5 15546.01,-1160.5 15549.01,-1158.8 15551.01,-1156.6 15553.01,-1154.5"/>
<polygon fill="black" stroke="black" points="15555.68,-1156.77 15560.01,-1147.1 15550.6,-1151.96 15555.68,-1156.77"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;has_continuous_mul.has_measurable_mul₂ -->
<g id="edge578" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;has_continuous_mul.has_measurable_mul₂</title>
<g id="a_edge578"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_mul.has_measurable_mul₂" xlink:title="has_continuous_mul.has_measurable_mul₂">
<path fill="none" stroke="black" d="M14611.01,-1740.3C14351.01,-1724.3 13901.01,-1693.1 13830.01,-1665.5 13813.01,-1658.8 13710.01,-1579.3 13699.01,-1564.5 13698.01,-1563.4 13697.01,-1562.1 13697.01,-1560.8"/>
<polygon fill="black" stroke="black" points="13700.31,-1559.62 13694.01,-1551.1 13693.63,-1561.69 13700.31,-1559.62"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;has_continuous_add.has_measurable_mul₂ -->
<g id="edge581" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;has_continuous_add.has_measurable_mul₂</title>
<g id="a_edge581"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_add.has_measurable_mul₂" xlink:title="has_continuous_add.has_measurable_mul₂">
<path fill="none" stroke="black" d="M14611.01,-1741.8C14582.01,-1740.4 14551.01,-1738.9 14522.01,-1737.5 14347.01,-1729.2 13097.01,-1754.7 12946.01,-1665.5 12906.01,-1641.6 12885.01,-1584.2 12879.01,-1561"/>
<polygon fill="black" stroke="black" points="12882.26,-1559.66 12876.01,-1551.1 12875.56,-1561.69 12882.26,-1559.66"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;has_continuous_sub.has_measurable_sub₂ -->
<g id="edge591" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;has_continuous_sub.has_measurable_sub₂</title>
<g id="a_edge591"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_sub.has_measurable_sub₂" xlink:title="has_continuous_sub.has_measurable_sub₂">
<path fill="none" stroke="black" d="M14611.01,-1741.8C14582.01,-1740.4 14551.01,-1738.9 14522.01,-1737.5 14436.01,-1733.4 13034.01,-1721.8 12968.01,-1665.5 12937.01,-1639 12941.01,-1583.6 12943.01,-1561"/>
<polygon fill="black" stroke="black" points="12946.46,-1561.6 12945.01,-1551.1 12939.6,-1560.21 12946.46,-1561.6"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;has_continuous_smul.has_measurable_smul₂ -->
<g id="edge582" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;has_continuous_smul.has_measurable_smul₂</title>
<g id="a_edge582"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_smul.has_measurable_smul₂" xlink:title="has_continuous_smul.has_measurable_smul₂">
<path fill="none" stroke="black" d="M14611.01,-1741.5C14339.01,-1726.4 13852.01,-1695.5 13777.01,-1665.5 13691.01,-1631.2 13690.01,-1588.7 13615.01,-1535.5 13565.01,-1500.3 13542.01,-1505.9 13498.01,-1463.5 13497.01,-1462.3 13496.01,-1461 13495.01,-1459.6"/>
<polygon fill="black" stroke="black" points="13498.37,-1460.59 13498.01,-1450 13491.69,-1458.5 13498.37,-1460.59"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;has_continuous_smul.has_measurable_smul₂ -->
<g id="edge583" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;has_continuous_smul.has_measurable_smul₂</title>
<g id="a_edge583"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_smul.has_measurable_smul₂" xlink:title="has_continuous_smul.has_measurable_smul₂">
<path fill="none" stroke="black" d="M14611.01,-1740.9C14343.01,-1725.5 13869.01,-1695.1 13795.01,-1665.5 13709.01,-1631.2 13708.01,-1588.7 13633.01,-1535.5 13583.01,-1500.3 13560.01,-1505.9 13516.01,-1463.5 13513.01,-1460.8 13511.01,-1457.1 13508.01,-1454.3"/>
<polygon fill="black" stroke="black" points="13508.58,-1450.73 13498.01,-1450 13505.82,-1457.17 13508.58,-1450.73"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;polish_space_of_complete_second_countable -->
<g id="edge586" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;polish_space_of_complete_second_countable</title>
<g id="a_edge586"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/polish_space_of_complete_second_countable" xlink:title="polish_space_of_complete_second_countable">
<path fill="none" stroke="black" d="M14866.01,-1737.5C14922.01,-1724.7 15000.01,-1702 15061.01,-1665.5 15064.01,-1663.9 15066.01,-1661.8 15068.01,-1659.7"/>
<polygon fill="black" stroke="black" points="15070.81,-1661.83 15075.01,-1652.1 15065.66,-1657.08 15070.81,-1661.83"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;measure_theory.sigma_finite -->
<g id="edge579" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;measure_theory.sigma_finite</title>
<g id="a_edge579"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.sigma_finite_haar_measure" xlink:title="measure_theory.measure.sigma_finite_haar_measure">
<path fill="none" stroke="black" d="M14981.01,-1738.7C14988.01,-1738.3 14996.01,-1737.9 15003.01,-1737.5 15090.01,-1732.8 16499.01,-1719.1 16568.01,-1665.5 16688.01,-1571.3 16733.01,-1466.5 16658.01,-1333.5 16627.01,-1279.4 16584.01,-1303.1 16538.01,-1261.5 16459.01,-1190.3 16434.01,-1152.3 16434.01,-1046 16434.01,-1046 16434.01,-1046 16434.01,-841.98 16434.01,-777.72 16446.01,-702.61 16456.01,-665.37"/>
<polygon fill="black" stroke="black" points="16459.45,-666.09 16459.01,-655.5 16452.76,-664.05 16459.45,-666.09"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;measure_theory.sigma_finite -->
<g id="edge580" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;measure_theory.sigma_finite</title>
<g id="a_edge580"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.sigma_finite_add_haar_measure" xlink:title="measure_theory.measure.sigma_finite_add_haar_measure">
<path fill="none" stroke="black" d="M14981.01,-1739.8C14994.01,-1739 15008.01,-1738.2 15021.01,-1737.5 15108.01,-1732.8 16517.01,-1719.1 16586.01,-1665.5 16706.01,-1571.3 16751.01,-1466.5 16676.01,-1333.5 16645.01,-1279.4 16602.01,-1303.1 16556.01,-1261.5 16477.01,-1190.3 16452.01,-1152.3 16452.01,-1046 16452.01,-1046 16452.01,-1046 16452.01,-841.98 16452.01,-778 16464.01,-703.25 16467.01,-665.85"/>
<polygon fill="black" stroke="black" points="16470.54,-665.79 16468.01,-655.5 16463.57,-665.12 16470.54,-665.79"/>
</a>
</g>
</g>
<!-- topological_space.first_countable_topology -->
<g id="node310" class="node">
<title>topological_space.first_countable_topology</title>
<g id="a_node310"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_space.first_countable_topology" xlink:title="topological_space.first_countable_topology">
<polygon fill="none" stroke="black" points="13725.51,-1667 13358.51,-1667 13358.51,-1636 13725.51,-1636 13725.51,-1667"/>
<text text-anchor="middle" x="13542.01" y="-1647.8" font-family="Courier,monospace" font-size="14.00">topological_space.first_countable_topology</text>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;topological_space.first_countable_topology -->
<g id="edge584" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;topological_space.first_countable_topology</title>
<g id="a_edge584"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_space.second_countable_topology.to_first_countable_topology" xlink:title="topological_space.second_countable_topology.to_first_countable_topology">
<path fill="none" stroke="black" d="M14625.01,-1737.5C14389.01,-1718.9 13965.01,-1685.4 13723.01,-1666.3"/>
<polygon fill="black" stroke="black" points="13723.26,-1662.81 13713.01,-1665.5 13722.7,-1669.79 13723.26,-1662.81"/>
</a>
</g>
</g>
<!-- measure_theory.sigma_finite_of_locally_finite -->
<g id="node311" class="node">
<title>measure_theory.sigma_finite_of_locally_finite</title>
<g id="a_node311"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.sigma_finite_of_locally_finite" xlink:title="measure_theory.sigma_finite_of_locally_finite">
<ellipse fill="black" stroke="black" cx="17319.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;measure_theory.sigma_finite_of_locally_finite -->
<g id="edge585" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;measure_theory.sigma_finite_of_locally_finite</title>
<g id="a_edge585"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.sigma_finite_of_locally_finite" xlink:title="measure_theory.sigma_finite_of_locally_finite">
<path fill="none" stroke="black" d="M14981.01,-1739.2C14991.01,-1738.6 15002.01,-1738 15012.01,-1737.5 15371.01,-1718.3 16283.01,-1765 16628.01,-1665.5 16828.01,-1607.9 16854.01,-1536.8 17035.01,-1434.5 17172.01,-1357.3 17235.01,-1375.4 17343.01,-1261.5 17415.01,-1185.4 17428.01,-1128.6 17391.01,-1030.5 17378.01,-995.3 17343.01,-964.39 17327.01,-951.45"/>
<polygon fill="black" stroke="black" points="17329.02,-948.57 17319.01,-945.09 17324.66,-954.05 17329.02,-948.57"/>
</a>
</g>
</g>
<!-- second_countable_topology_either -->
<g id="node312" class="node">
<title>second_countable_topology_either</title>
<g id="a_node312"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/second_countable_topology_either" xlink:title="second_countable_topology_either">
<polygon fill="none" stroke="black" points="14724.51,-1667 14441.51,-1667 14441.51,-1636 14724.51,-1636 14724.51,-1667"/>
<text text-anchor="middle" x="14583.01" y="-1647.8" font-family="Courier,monospace" font-size="14.00">second_countable_topology_either</text>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;second_countable_topology_either -->
<g id="edge587" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;second_countable_topology_either</title>
<g id="a_edge587"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/second_countable_topology_either_of_left" xlink:title="second_countable_topology_either_of_left">
<path fill="none" stroke="black" d="M14762.01,-1737.4C14722.01,-1719.9 14656.01,-1689.4 14616.01,-1670"/>
<polygon fill="black" stroke="black" points="14617.54,-1666.85 14607.01,-1665.6 14614.46,-1673.14 14617.54,-1666.85"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;second_countable_topology_either -->
<g id="edge588" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;second_countable_topology_either</title>
<g id="a_edge588"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/second_countable_topology_either_of_right" xlink:title="second_countable_topology_either_of_right">
<path fill="none" stroke="black" d="M14772.01,-1737.4C14736.01,-1719.8 14670.01,-1689 14626.01,-1669.6"/>
<polygon fill="black" stroke="black" points="14627.57,-1666.46 14617.01,-1665.6 14624.73,-1672.86 14627.57,-1666.46"/>
</a>
</g>
</g>
<!-- topological_space.separable_space -->
<g id="node313" class="node">
<title>topological_space.separable_space</title>
<g id="a_node313"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_space.separable_space" xlink:title="topological_space.separable_space">
<polygon fill="none" stroke="black" points="16569.51,-1667 16278.51,-1667 16278.51,-1636 16569.51,-1636 16569.51,-1667"/>
<text text-anchor="middle" x="16424.01" y="-1647.8" font-family="Courier,monospace" font-size="14.00">topological_space.separable_space</text>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;topological_space.separable_space -->
<g id="edge589" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;topological_space.separable_space</title>
<g id="a_edge589"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_space.second_countable_topology.to_separable_space" xlink:title="topological_space.second_countable_topology.to_separable_space">
<path fill="none" stroke="black" d="M14981.01,-1739.4C14991.01,-1738.8 15002.01,-1738.1 15012.01,-1737.5 15470.01,-1709.3 16011.01,-1676.8 16270.01,-1661.2"/>
<polygon fill="black" stroke="black" points="16270.24,-1664.69 16280.01,-1660.6 16269.82,-1657.71 16270.24,-1664.69"/>
</a>
</g>
</g>
<!-- has_continuous_inf.has_measurable_inf₂ -->
<g id="node314" class="node">
<title>has_continuous_inf.has_measurable_inf₂</title>
<g id="a_node314"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_inf.has_measurable_inf₂" xlink:title="has_continuous_inf.has_measurable_inf₂">
<ellipse fill="black" stroke="black" cx="14771.01" cy="-1550.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;has_continuous_inf.has_measurable_inf₂ -->
<g id="edge590" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;has_continuous_inf.has_measurable_inf₂</title>
<g id="a_edge590"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_inf.has_measurable_inf₂" xlink:title="has_continuous_inf.has_measurable_inf₂">
<path fill="none" stroke="black" d="M14847.01,-1737.4C14903.01,-1719.5 14981.01,-1684.7 14951.01,-1636.5 14912.01,-1574.3 14814.01,-1556.4 14781.01,-1552.2"/>
<polygon fill="black" stroke="black" points="14781.36,-1548.72 14771.01,-1551 14780.53,-1555.67 14781.36,-1548.72"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;sigma_compact_space_of_locally_compact_second_countable -->
<g id="edge592" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;sigma_compact_space_of_locally_compact_second_countable</title>
<g id="a_edge592"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/sigma_compact_space_of_locally_compact_second_countable" xlink:title="sigma_compact_space_of_locally_compact_second_countable">
<path fill="none" stroke="black" d="M14981.01,-1738.2C15252.01,-1719 15734.01,-1683.1 15813.01,-1665.5 15939.01,-1637.4 15993.01,-1655.3 16085.01,-1564.5 16117.01,-1532.9 16221.01,-1216.6 16241.01,-1156.7"/>
<polygon fill="black" stroke="black" points="16244.37,-1157.69 16244.01,-1147.1 16237.69,-1155.6 16244.37,-1157.69"/>
</a>
</g>
</g>
<!-- has_continuous_sup.has_measurable_sup₂ -->
<g id="node316" class="node">
<title>has_continuous_sup.has_measurable_sup₂</title>
<g id="a_node316"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_sup.has_measurable_sup₂" xlink:title="has_continuous_sup.has_measurable_sup₂">
<ellipse fill="black" stroke="black" cx="14431.01" cy="-1550.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- topological_space.second_countable_topology&#45;&gt;has_continuous_sup.has_measurable_sup₂ -->
<g id="edge593" class="edge">
<title>topological_space.second_countable_topology&#45;&gt;has_continuous_sup.has_measurable_sup₂</title>
<g id="a_edge593"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_sup.has_measurable_sup₂" xlink:title="has_continuous_sup.has_measurable_sup₂">
<path fill="none" stroke="black" d="M14792.01,-1737.4C14784.01,-1713.4 14765.01,-1663.3 14731.01,-1636.5 14637.01,-1562.7 14482.01,-1552.6 14441.01,-1551.2"/>
<polygon fill="black" stroke="black" points="14441.08,-1547.7 14431.01,-1551 14440.94,-1554.7 14441.08,-1547.7"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular.of_sigma_compact_space_of_is_locally_finite_measure&#45;&gt;measure_theory.measure.regular -->
<g id="edge1048" class="edge">
<title>measure_theory.measure.regular.of_sigma_compact_space_of_is_locally_finite_measure&#45;&gt;measure_theory.measure.regular</title>
<g id="a_edge1048"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.of_sigma_compact_space_of_is_locally_finite_measure" xlink:title="measure_theory.measure.regular.of_sigma_compact_space_of_is_locally_finite_measure">
<path fill="none" stroke="black" d="M16237.01,-942.96C16231.01,-941.82 15938.01,-886.87 15791.01,-859.35"/>
<polygon fill="black" stroke="black" points="15791.48,-855.88 15781.01,-857.5 15790.21,-862.76 15791.48,-855.88"/>
</a>
</g>
</g>
<!-- measure_theory.measure.weakly_regular.of_pseudo_emetric_sigma_compact_space_of_locally_finite&#45;&gt;measure_theory.measure.weakly_regular -->
<g id="edge1049" class="edge">
<title>measure_theory.measure.weakly_regular.of_pseudo_emetric_sigma_compact_space_of_locally_finite&#45;&gt;measure_theory.measure.weakly_regular</title>
<g id="a_edge1049"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.weakly_regular.of_pseudo_emetric_sigma_compact_space_of_locally_finite" xlink:title="measure_theory.measure.weakly_regular.of_pseudo_emetric_sigma_compact_space_of_locally_finite">
<path fill="none" stroke="black" d="M16040.01,-942.93C16037.01,-940.91 15953.01,-875.94 15882.01,-828.48 15811.01,-780.89 15796.01,-761.81 15718.01,-727.48 15644.01,-695.08 15555.01,-671.72 15492.01,-657.68"/>
<polygon fill="black" stroke="black" points="15492.53,-654.21 15482.01,-655.51 15491.04,-661.05 15492.53,-654.21"/>
</a>
</g>
</g>
<!-- measure_theory.measure.regular.sigma_finite&#45;&gt;measure_theory.sigma_finite -->
<g id="edge1255" class="edge">
<title>measure_theory.measure.regular.sigma_finite&#45;&gt;measure_theory.sigma_finite</title>
<g id="a_edge1255"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.regular.sigma_finite" xlink:title="measure_theory.measure.regular.sigma_finite">
<path fill="none" stroke="black" d="M16396.01,-740.91C16398.01,-738.84 16430.01,-692.48 16450.01,-663.97"/>
<polygon fill="black" stroke="black" points="16452.93,-665.91 16456.01,-655.77 16447.28,-661.77 16452.93,-665.91"/>
</a>
</g>
</g>
<!-- measure_theory.measure.is_haar_measure.sigma_finite&#45;&gt;measure_theory.sigma_finite -->
<g id="edge1256" class="edge">
<title>measure_theory.measure.is_haar_measure.sigma_finite&#45;&gt;measure_theory.sigma_finite</title>
<g id="a_edge1256"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_haar_measure.sigma_finite" xlink:title="measure_theory.measure.is_haar_measure.sigma_finite">
<path fill="none" stroke="black" d="M16528.01,-942.89C16527.01,-939.23 16507.01,-821.25 16487.01,-727.48 16482.01,-706.33 16476.01,-682.42 16472.01,-665.27"/>
<polygon fill="black" stroke="black" points="16475.46,-664.64 16470.01,-655.55 16468.6,-666.05 16475.46,-664.64"/>
</a>
</g>
</g>
<!-- measure_theory.measure.is_add_haar_measure.sigma_finite&#45;&gt;measure_theory.sigma_finite -->
<g id="edge1257" class="edge">
<title>measure_theory.measure.is_add_haar_measure.sigma_finite&#45;&gt;measure_theory.sigma_finite</title>
<g id="a_edge1257"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_add_haar_measure.sigma_finite" xlink:title="measure_theory.measure.is_add_haar_measure.sigma_finite">
<path fill="none" stroke="black" d="M16490.01,-942.93C16490.01,-939.1 16473.01,-735.84 16468.01,-665.58"/>
<polygon fill="black" stroke="black" points="16471.48,-665.1 16467.01,-655.49 16464.52,-665.79 16471.48,-665.1"/>
</a>
</g>
</g>
<!-- polish_space -->
<g id="node518" class="node">
<title>polish_space</title>
<g id="a_node518"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/polish_space" xlink:title="polish_space">
<polygon fill="none" stroke="black" points="15210.51,-1566 15095.51,-1566 15095.51,-1535 15210.51,-1535 15210.51,-1566"/>
<text text-anchor="middle" x="15153.01" y="-1546.8" font-family="Courier,monospace" font-size="14.00">polish_space</text>
</a>
</g>
</g>
<!-- polish_space_of_complete_second_countable&#45;&gt;polish_space -->
<g id="edge1020" class="edge">
<title>polish_space_of_complete_second_countable&#45;&gt;polish_space</title>
<g id="a_edge1020"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/polish_space_of_complete_second_countable" xlink:title="polish_space_of_complete_second_countable">
<path fill="none" stroke="black" d="M15075.01,-1649.9C15077.01,-1647.9 15113.01,-1601.5 15136.01,-1573"/>
<polygon fill="black" stroke="black" points="15138.93,-1574.94 15142.01,-1564.8 15133.28,-1570.8 15138.93,-1574.94"/>
</a>
</g>
</g>
<!-- topological_semiring&#45;&gt;has_continuous_mul -->
<g id="edge960" class="edge">
<title>topological_semiring&#45;&gt;has_continuous_mul</title>
<g id="a_edge960"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_semiring.to_has_continuous_mul" xlink:title="topological_semiring.to_has_continuous_mul">
<path fill="none" stroke="black" d="M12731.01,-1737.5C12837.01,-1719.2 13025.01,-1686.5 13136.01,-1667.3"/>
<polygon fill="black" stroke="black" points="13136.74,-1670.73 13146.01,-1665.6 13135.57,-1663.83 13136.74,-1670.73"/>
</a>
</g>
</g>
<!-- topological_semiring&#45;&gt;has_continuous_add -->
<g id="edge961" class="edge">
<title>topological_semiring&#45;&gt;has_continuous_add</title>
<g id="a_edge961"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_semiring.to_has_continuous_add" xlink:title="topological_semiring.to_has_continuous_add">
<path fill="none" stroke="black" d="M12588.01,-1737.4C12501.01,-1719.2 12347.01,-1686.9 12256.01,-1667.7"/>
<polygon fill="black" stroke="black" points="12256.52,-1664.23 12246.01,-1665.6 12255.08,-1671.08 12256.52,-1664.23"/>
</a>
</g>
</g>
<!-- category_theory.creates_limits_of_size -->
<g id="node228" class="node">
<title>category_theory.creates_limits_of_size</title>
<g id="a_node228"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.creates_limits_of_size" xlink:title="category_theory.creates_limits_of_size">
<polygon fill="none" stroke="black" points="9973.51,-1262 9640.51,-1262 9640.51,-1231 9973.51,-1231 9973.51,-1262"/>
<text text-anchor="middle" x="9807.01" y="-1242.8" font-family="Courier,monospace" font-size="14.00">category_theory.creates_limits_of_size</text>
</a>
</g>
</g>
<!-- category_theory.creates_limits_of_size&#45;&gt;category_theory.limits.reflects_limits_of_size -->
<g id="edge412" class="edge">
<title>category_theory.creates_limits_of_size&#45;&gt;category_theory.limits.reflects_limits_of_size</title>
<g id="a_edge412"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.reflects_limits_of_creates_limits" xlink:title="category_theory.reflects_limits_of_creates_limits">
<path fill="none" stroke="black" d="M9785.21,-1232.4C9757.61,-1215.2 9709.81,-1185.5 9678.51,-1166"/>
<polygon fill="black" stroke="black" points="9680.16,-1162.9 9669.81,-1160.6 9676.46,-1168.85 9680.16,-1162.9"/>
</a>
</g>
</g>
<!-- category_theory.comp_creates_limits -->
<g id="node229" class="node">
<title>category_theory.comp_creates_limits</title>
<g id="a_node229"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.comp_creates_limits" xlink:title="category_theory.comp_creates_limits">
<ellipse fill="black" stroke="black" cx="9901.01" cy="-1145.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.creates_limits_of_size&#45;&gt;category_theory.comp_creates_limits -->
<g id="edge413" class="edge">
<title>category_theory.creates_limits_of_size&#45;&gt;category_theory.comp_creates_limits</title>
<g id="a_edge413"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.comp_creates_limits" xlink:title="category_theory.comp_creates_limits">
<path fill="none" stroke="black" d="M9810.41,-1232.2C9825.91,-1209.4 9869.71,-1164.7 9891.41,-1151"/>
<polygon fill="black" stroke="black" points="9892.91,-1154.17 9900.71,-1147 9890.14,-1147.74 9892.91,-1154.17"/>
</a>
</g>
</g>
<!-- category_theory.creates_limits_of_size&#45;&gt;category_theory.comp_creates_limits -->
<g id="edge414" class="edge">
<title>category_theory.creates_limits_of_size&#45;&gt;category_theory.comp_creates_limits</title>
<g id="a_edge414"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.comp_creates_limits" xlink:title="category_theory.comp_creates_limits">
<path fill="none" stroke="black" d="M9820.11,-1232.2C9840.21,-1211 9878.11,-1171.1 9893.91,-1154.5"/>
<polygon fill="black" stroke="black" points="9896.49,-1156.87 9900.81,-1147.2 9891.4,-1152.06 9896.49,-1156.87"/>
</a>
</g>
</g>
<!-- category_theory.preserves_limits_of_creates_limits_and_has_limits -->
<g id="node230" class="node">
<title>category_theory.preserves_limits_of_creates_limits_and_has_limits</title>
<g id="a_node230"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.preserves_limits_of_creates_limits_and_has_limits" xlink:title="category_theory.preserves_limits_of_creates_limits_and_has_limits">
<ellipse fill="black" stroke="black" cx="9919.01" cy="-1145.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.creates_limits_of_size&#45;&gt;category_theory.preserves_limits_of_creates_limits_and_has_limits -->
<g id="edge415" class="edge">
<title>category_theory.creates_limits_of_size&#45;&gt;category_theory.preserves_limits_of_creates_limits_and_has_limits</title>
<g id="a_edge415"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.preserves_limits_of_creates_limits_and_has_limits" xlink:title="category_theory.preserves_limits_of_creates_limits_and_has_limits">
<path fill="none" stroke="black" d="M9826.71,-1232.4C9848.51,-1216.6 9884.21,-1189.2 9910.01,-1160.5 9911.31,-1159.1 9912.51,-1157.5 9913.61,-1155.9"/>
<polygon fill="black" stroke="black" points="9916.77,-1157.45 9919.01,-1147.1 9910.8,-1153.79 9916.77,-1157.45"/>
</a>
</g>
</g>
<!-- category_theory.comp_creates_limits&#45;&gt;category_theory.creates_limits_of_size -->
<g id="edge416" class="edge">
<title>category_theory.comp_creates_limits&#45;&gt;category_theory.creates_limits_of_size</title>
<g id="a_edge416"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.comp_creates_limits" xlink:title="category_theory.comp_creates_limits">
<path fill="none" stroke="black" d="M9901.31,-1147C9913.01,-1147.8 9870.11,-1196.9 9837.51,-1225.6"/>
<polygon fill="black" stroke="black" points="9834.87,-1223.26 9829.51,-1232.4 9839.4,-1228.59 9834.87,-1223.26"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limits_of_size -->
<g id="node231" class="node">
<title>category_theory.limits.preserves_limits_of_size</title>
<g id="a_node231"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_limits_of_size" xlink:title="category_theory.limits.preserves_limits_of_size">
<polygon fill="none" stroke="black" points="10085.51,-1060 9676.51,-1060 9676.51,-1029 10085.51,-1029 10085.51,-1060"/>
<text text-anchor="middle" x="9881.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.preserves_limits_of_size</text>
</a>
</g>
</g>
<!-- category_theory.preserves_limits_of_creates_limits_and_has_limits&#45;&gt;category_theory.limits.preserves_limits_of_size -->
<g id="edge417" class="edge">
<title>category_theory.preserves_limits_of_creates_limits_and_has_limits&#45;&gt;category_theory.limits.preserves_limits_of_size</title>
<g id="a_edge417"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.preserves_limits_of_creates_limits_and_has_limits" xlink:title="category_theory.preserves_limits_of_creates_limits_and_has_limits">
<path fill="none" stroke="black" d="M9919.01,-1144.9C9918.21,-1142.9 9901.01,-1098.1 9890.01,-1069.5"/>
<polygon fill="black" stroke="black" points="9893.15,-1067.9 9886.31,-1059.8 9886.61,-1070.39 9893.15,-1067.9"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_finite_limits -->
<g id="node232" class="node">
<title>category_theory.limits.preserves_finite_limits</title>
<g id="a_node232"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_finite_limits" xlink:title="category_theory.limits.preserves_finite_limits">
<polygon fill="none" stroke="black" points="10296.01,-958.98 9896.01,-958.98 9896.01,-927.98 10296.01,-927.98 10296.01,-958.98"/>
<text text-anchor="middle" x="10096.01" y="-939.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.preserves_finite_limits</text>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limits_of_size&#45;&gt;category_theory.limits.preserves_finite_limits -->
<g id="edge418" class="edge">
<title>category_theory.limits.preserves_limits_of_size&#45;&gt;category_theory.limits.preserves_finite_limits</title>
<g id="a_edge418"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_limits.preserves_finite_limits_of_size" xlink:title="category_theory.limits.preserves_limits.preserves_finite_limits_of_size">
<path fill="none" stroke="black" d="M9910.41,-1030.4C9948.61,-1012.8 10015.01,-982.15 10057.01,-962.73"/>
<polygon fill="black" stroke="black" points="10059.15,-965.63 10067.01,-958.53 10056.44,-959.18 10059.15,-965.63"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_preserves_limits -->
<g id="node233" class="node">
<title>category_theory.limits.comp_preserves_limits</title>
<g id="a_node233"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_limits" xlink:title="category_theory.limits.comp_preserves_limits">
<ellipse fill="black" stroke="black" cx="9881.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limits_of_size&#45;&gt;category_theory.limits.comp_preserves_limits -->
<g id="edge419" class="edge">
<title>category_theory.limits.preserves_limits_of_size&#45;&gt;category_theory.limits.comp_preserves_limits</title>
<g id="a_edge419"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_limits" xlink:title="category_theory.limits.comp_preserves_limits">
<path fill="none" stroke="black" d="M9871.31,-1030.2C9865.61,-1008.9 9866.31,-968.72 9873.51,-952.28"/>
<polygon fill="black" stroke="black" points="9876.18,-954.56 9880.71,-944.99 9871.2,-949.65 9876.18,-954.56"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limits_of_size&#45;&gt;category_theory.limits.comp_preserves_limits -->
<g id="edge420" class="edge">
<title>category_theory.limits.preserves_limits_of_size&#45;&gt;category_theory.limits.comp_preserves_limits</title>
<g id="a_edge420"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_limits" xlink:title="category_theory.limits.comp_preserves_limits">
<path fill="none" stroke="black" d="M9881.01,-1030.2C9881.01,-1010.1 9881.01,-973.28 9881.01,-955.34"/>
<polygon fill="black" stroke="black" points="9884.51,-955.15 9881.01,-945.15 9877.51,-955.15 9884.51,-955.15"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limits_of_shape_of_preserves_finite_limits -->
<g id="node272" class="node">
<title>category_theory.limits.preserves_limits_of_shape_of_preserves_finite_limits</title>
<g id="a_node272"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_limits_of_shape_of_preserves_finite_limits" xlink:title="category_theory.limits.preserves_limits_of_shape_of_preserves_finite_limits">
<ellipse fill="black" stroke="black" cx="9616.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_finite_limits&#45;&gt;category_theory.limits.preserves_limits_of_shape_of_preserves_finite_limits -->
<g id="edge492" class="edge">
<title>category_theory.limits.preserves_finite_limits&#45;&gt;category_theory.limits.preserves_limits_of_shape_of_preserves_finite_limits</title>
<g id="a_edge492"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_limits_of_shape_of_preserves_finite_limits" xlink:title="category_theory.limits.preserves_limits_of_shape_of_preserves_finite_limits">
<path fill="none" stroke="black" d="M10031.01,-929.47C9913.91,-905.43 9677.81,-856.72 9626.11,-846.07"/>
<polygon fill="black" stroke="black" points="9626.62,-842.6 9616.11,-843.99 9625.19,-849.45 9626.62,-842.6"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_preserves_limits&#45;&gt;category_theory.limits.preserves_limits_of_size -->
<g id="edge493" class="edge">
<title>category_theory.limits.comp_preserves_limits&#45;&gt;category_theory.limits.preserves_limits_of_size</title>
<g id="a_edge493"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_limits" xlink:title="category_theory.limits.comp_preserves_limits">
<path fill="none" stroke="black" d="M9881.31,-944.99C9893.41,-945.79 9897.11,-991.36 9892.71,-1020.4"/>
<polygon fill="black" stroke="black" points="9889.28,-1019.7 9890.71,-1030.2 9896.14,-1021.1 9889.28,-1019.7"/>
</a>
</g>
</g>
<!-- category_theory.is_equivalence -->
<g id="node234" class="node">
<title>category_theory.is_equivalence</title>
<g id="a_node234"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_equivalence" xlink:title="category_theory.is_equivalence">
<polygon fill="none" stroke="black" points="9510.01,-1363 9244.01,-1363 9244.01,-1332 9510.01,-1332 9510.01,-1363"/>
<text text-anchor="middle" x="9377.01" y="-1343.8" font-family="Courier,monospace" font-size="14.00">category_theory.is_equivalence</text>
</a>
</g>
</g>
<!-- category_theory.is_equivalence&#45;&gt;category_theory.limits.reflects_limits_of_size -->
<g id="edge421" class="edge">
<title>category_theory.is_equivalence&#45;&gt;category_theory.limits.reflects_limits_of_size</title>
<g id="a_edge421"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.is_equivalence_reflects_limits" xlink:title="category_theory.adjunction.is_equivalence_reflects_limits">
<path fill="none" stroke="black" d="M9419.21,-1333.4C9458.01,-1319.5 9515.71,-1295.2 9558.01,-1261.5 9591.01,-1235.2 9619.21,-1194.6 9634.81,-1169.5"/>
<polygon fill="black" stroke="black" points="9637.97,-1171.05 9640.21,-1160.7 9632,-1167.39 9637.97,-1171.05"/>
</a>
</g>
</g>
<!-- category_theory.is_equivalence&#45;&gt;category_theory.creates_limits_of_size -->
<g id="edge422" class="edge">
<title>category_theory.is_equivalence&#45;&gt;category_theory.creates_limits_of_size</title>
<g id="a_edge422"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.is_equivalence_creates_limits" xlink:title="category_theory.adjunction.is_equivalence_creates_limits">
<path fill="none" stroke="black" d="M9435.91,-1333.4C9514.81,-1315.3 9654.61,-1283.1 9738.21,-1263.8"/>
<polygon fill="black" stroke="black" points="9739.11,-1267.19 9748.11,-1261.6 9737.59,-1260.35 9739.11,-1267.19"/>
</a>
</g>
</g>
<!-- category_theory.is_equivalence&#45;&gt;category_theory.limits.preserves_limits_of_size -->
<g id="edge423" class="edge">
<title>category_theory.is_equivalence&#45;&gt;category_theory.limits.preserves_limits_of_size</title>
<g id="a_edge423"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.is_equivalence_preserves_limits" xlink:title="category_theory.adjunction.is_equivalence_preserves_limits">
<path fill="none" stroke="black" d="M9415.81,-1333.4C9458.61,-1317.9 9529.11,-1290.9 9587.01,-1261.5 9608.91,-1250.4 9611.71,-1242.8 9634.01,-1232.5 9727.31,-1189.2 9784.41,-1236.3 9854.01,-1160.5 9876.71,-1135.7 9881.41,-1095.5 9881.81,-1069.9"/>
<polygon fill="black" stroke="black" points="9885.31,-1069.6 9881.81,-1059.6 9878.31,-1069.6 9885.31,-1069.6"/>
</a>
</g>
</g>
<!-- category_theory.full -->
<g id="node235" class="node">
<title>category_theory.full</title>
<g id="a_node235"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.full" xlink:title="category_theory.full">
<polygon fill="none" stroke="black" points="6969.01,-1060 6787.01,-1060 6787.01,-1029 6969.01,-1029 6969.01,-1060"/>
<text text-anchor="middle" x="6878.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">category_theory.full</text>
</a>
</g>
</g>
<!-- category_theory.is_equivalence&#45;&gt;category_theory.full -->
<g id="edge424" class="edge">
<title>category_theory.is_equivalence&#45;&gt;category_theory.full</title>
<g id="a_edge424"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.equivalence.full_of_equivalence" xlink:title="category_theory.equivalence.full_of_equivalence">
<path fill="none" stroke="black" d="M9245.91,-1336.9C8811.61,-1303.3 7442.41,-1195 7354.01,-1160.5 7334.21,-1152.8 7335.41,-1140.2 7316.01,-1131.5 7257.01,-1105 7088.51,-1076.7 6978.51,-1060.2"/>
<polygon fill="black" stroke="black" points="6978.82,-1056.71 6968.41,-1058.7 6977.79,-1063.63 6978.82,-1056.71"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_colimits_of_size -->
<g id="node236" class="node">
<title>category_theory.limits.reflects_colimits_of_size</title>
<g id="a_node236"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.reflects_colimits_of_size" xlink:title="category_theory.limits.reflects_colimits_of_size">
<polygon fill="none" stroke="black" points="9417.51,-1161 9000.51,-1161 9000.51,-1130 9417.51,-1130 9417.51,-1161"/>
<text text-anchor="middle" x="9209.01" y="-1141.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.reflects_colimits_of_size</text>
</a>
</g>
</g>
<!-- category_theory.is_equivalence&#45;&gt;category_theory.limits.reflects_colimits_of_size -->
<g id="edge425" class="edge">
<title>category_theory.is_equivalence&#45;&gt;category_theory.limits.reflects_colimits_of_size</title>
<g id="a_edge425"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.is_equivalence_reflects_colimits" xlink:title="category_theory.adjunction.is_equivalence_reflects_colimits">
<path fill="none" stroke="black" d="M9307.21,-1333.5C9267.01,-1321.8 9219.61,-1300.3 9195.01,-1261.5 9177.41,-1233.7 9188.11,-1194.4 9198.11,-1169.8"/>
<polygon fill="black" stroke="black" points="9201.34,-1171.17 9202.11,-1160.6 9194.92,-1168.38 9201.34,-1171.17"/>
</a>
</g>
</g>
<!-- category_theory.creates_colimits_of_size -->
<g id="node237" class="node">
<title>category_theory.creates_colimits_of_size</title>
<g id="a_node237"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.creates_colimits_of_size" xlink:title="category_theory.creates_colimits_of_size">
<polygon fill="none" stroke="black" points="9552.01,-1262 9202.01,-1262 9202.01,-1231 9552.01,-1231 9552.01,-1262"/>
<text text-anchor="middle" x="9377.01" y="-1242.8" font-family="Courier,monospace" font-size="14.00">category_theory.creates_colimits_of_size</text>
</a>
</g>
</g>
<!-- category_theory.is_equivalence&#45;&gt;category_theory.creates_colimits_of_size -->
<g id="edge426" class="edge">
<title>category_theory.is_equivalence&#45;&gt;category_theory.creates_colimits_of_size</title>
<g id="a_edge426"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.is_equivalence_creates_colimits" xlink:title="category_theory.adjunction.is_equivalence_creates_colimits">
<path fill="none" stroke="black" d="M9377.01,-1333.2C9377.01,-1317.3 9377.01,-1291 9377.01,-1271.7"/>
<polygon fill="black" stroke="black" points="9380.51,-1271.6 9377.01,-1261.6 9373.51,-1271.6 9380.51,-1271.6"/>
</a>
</g>
</g>
<!-- category_theory.faithful -->
<g id="node238" class="node">
<title>category_theory.faithful</title>
<g id="a_node238"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.faithful" xlink:title="category_theory.faithful">
<polygon fill="none" stroke="black" points="7257.01,-1060 7041.01,-1060 7041.01,-1029 7257.01,-1029 7257.01,-1060"/>
<text text-anchor="middle" x="7149.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">category_theory.faithful</text>
</a>
</g>
</g>
<!-- category_theory.is_equivalence&#45;&gt;category_theory.faithful -->
<g id="edge427" class="edge">
<title>category_theory.is_equivalence&#45;&gt;category_theory.faithful</title>
<g id="a_edge427"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.equivalence.faithful_of_equivalence" xlink:title="category_theory.equivalence.faithful_of_equivalence">
<path fill="none" stroke="black" d="M9272.51,-1333.5C9038.51,-1303.1 8454.41,-1227 7966.01,-1160.5 7961.61,-1159.9 7475.51,-1091.8 7255.31,-1060.9"/>
<polygon fill="black" stroke="black" points="7255.7,-1057.42 7245.31,-1059.5 7254.73,-1064.35 7255.7,-1057.42"/>
</a>
</g>
</g>
<!-- category_theory.is_left_adjoint -->
<g id="node239" class="node">
<title>category_theory.is_left_adjoint</title>
<g id="a_node239"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_left_adjoint" xlink:title="category_theory.is_left_adjoint">
<polygon fill="none" stroke="black" points="6353.01,-1161 6079.01,-1161 6079.01,-1130 6353.01,-1130 6353.01,-1161"/>
<text text-anchor="middle" x="6216.01" y="-1141.8" font-family="Courier,monospace" font-size="14.00">category_theory.is_left_adjoint</text>
</a>
</g>
</g>
<!-- category_theory.is_equivalence&#45;&gt;category_theory.is_left_adjoint -->
<g id="edge428" class="edge">
<title>category_theory.is_equivalence&#45;&gt;category_theory.is_left_adjoint</title>
<g id="a_edge428"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.left_adjoint_of_equivalence" xlink:title="category_theory.functor.left_adjoint_of_equivalence">
<path fill="none" stroke="black" d="M9245.91,-1345.1C8728.81,-1337.3 6845.91,-1306 6582.01,-1261.5 6461.21,-1241.2 6325.01,-1190.9 6258.01,-1164.3"/>
<polygon fill="black" stroke="black" points="6259.2,-1161 6248.61,-1160.5 6256.57,-1167.49 6259.2,-1161"/>
</a>
</g>
</g>
<!-- category_theory.is_right_adjoint -->
<g id="node240" class="node">
<title>category_theory.is_right_adjoint</title>
<g id="a_node240"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_right_adjoint" xlink:title="category_theory.is_right_adjoint">
<polygon fill="none" stroke="black" points="5633.51,-958.98 5350.51,-958.98 5350.51,-927.98 5633.51,-927.98 5633.51,-958.98"/>
<text text-anchor="middle" x="5492.01" y="-939.78" font-family="Courier,monospace" font-size="14.00">category_theory.is_right_adjoint</text>
</a>
</g>
</g>
<!-- category_theory.is_equivalence&#45;&gt;category_theory.is_right_adjoint -->
<g id="edge429" class="edge">
<title>category_theory.is_equivalence&#45;&gt;category_theory.is_right_adjoint</title>
<g id="a_edge429"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.right_adjoint_of_equivalence" xlink:title="category_theory.functor.right_adjoint_of_equivalence">
<path fill="none" stroke="black" d="M9245.81,-1344.6C8607.61,-1332.9 5853.41,-1281.2 5767.01,-1261.5 5570.51,-1216.6 5463.51,-1233.1 5361.01,-1059.5 5335.91,-1017 5396.11,-982.15 5443.01,-962.46"/>
<polygon fill="black" stroke="black" points="5444.57,-965.61 5452.51,-958.6 5441.93,-959.12 5444.57,-965.61"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimits_of_size -->
<g id="node241" class="node">
<title>category_theory.limits.preserves_colimits_of_size</title>
<g id="a_node241"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_colimits_of_size" xlink:title="category_theory.limits.preserves_colimits_of_size">
<polygon fill="none" stroke="black" points="8188.01,-1060 7762.01,-1060 7762.01,-1029 8188.01,-1029 8188.01,-1060"/>
<text text-anchor="middle" x="7975.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.preserves_colimits_of_size</text>
</a>
</g>
</g>
<!-- category_theory.is_equivalence&#45;&gt;category_theory.limits.preserves_colimits_of_size -->
<g id="edge430" class="edge">
<title>category_theory.is_equivalence&#45;&gt;category_theory.limits.preserves_colimits_of_size</title>
<g id="a_edge430"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.is_equivalence_preserves_colimits" xlink:title="category_theory.adjunction.is_equivalence_preserves_colimits">
<path fill="none" stroke="black" d="M9285.01,-1333.5C9137.21,-1309.8 8839.41,-1254.4 8602.01,-1160.5 8577.81,-1150.9 8575.61,-1140 8551.01,-1131.5 8472.51,-1104.4 8257.81,-1076.9 8113.91,-1060.7"/>
<polygon fill="black" stroke="black" points="8113.95,-1057.18 8103.61,-1059.5 8113.14,-1064.13 8113.95,-1057.18"/>
</a>
</g>
</g>
<!-- category_theory.functor.is_equivalence_trans -->
<g id="node242" class="node">
<title>category_theory.functor.is_equivalence_trans</title>
<g id="a_node242"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.is_equivalence_trans" xlink:title="category_theory.functor.is_equivalence_trans">
<ellipse fill="black" stroke="black" cx="9989.01" cy="-1246.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_equivalence&#45;&gt;category_theory.functor.is_equivalence_trans -->
<g id="edge431" class="edge">
<title>category_theory.is_equivalence&#45;&gt;category_theory.functor.is_equivalence_trans</title>
<g id="a_edge431"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.is_equivalence_trans" xlink:title="category_theory.functor.is_equivalence_trans">
<path fill="none" stroke="black" d="M9508.21,-1340C9656.91,-1330.3 9887.81,-1308.2 9962.01,-1261.5 9966.71,-1258.6 9969.51,-1252.2 9978.71,-1249.4"/>
<polygon fill="black" stroke="black" points="9979.2,-1252.87 9988.61,-1248 9978.22,-1245.93 9979.2,-1252.87"/>
</a>
</g>
</g>
<!-- category_theory.is_equivalence&#45;&gt;category_theory.functor.is_equivalence_trans -->
<g id="edge432" class="edge">
<title>category_theory.is_equivalence&#45;&gt;category_theory.functor.is_equivalence_trans</title>
<g id="a_edge432"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.is_equivalence_trans" xlink:title="category_theory.functor.is_equivalence_trans">
<path fill="none" stroke="black" d="M9508.31,-1340.8C9661.61,-1331.5 9903.71,-1309.5 9980.01,-1261.5 9981.71,-1260.4 9983.11,-1258.9 9984.41,-1257.3"/>
<polygon fill="black" stroke="black" points="9987.67,-1258.61 9989.01,-1248.1 9981.41,-1255.48 9987.67,-1258.61"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_zero_morphisms -->
<g id="node243" class="node">
<title>category_theory.functor.preserves_zero_morphisms</title>
<g id="a_node243"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_zero_morphisms" xlink:title="category_theory.functor.preserves_zero_morphisms">
<polygon fill="none" stroke="black" points="6328.51,-655.98 5911.51,-655.98 5911.51,-624.98 6328.51,-624.98 6328.51,-655.98"/>
<text text-anchor="middle" x="6120.01" y="-636.78" font-family="Courier,monospace" font-size="14.00">category_theory.functor.preserves_zero_morphisms</text>
</a>
</g>
</g>
<!-- category_theory.full&#45;&gt;category_theory.functor.preserves_zero_morphisms -->
<g id="edge433" class="edge">
<title>category_theory.full&#45;&gt;category_theory.functor.preserves_zero_morphisms</title>
<g id="a_edge433"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_zero_morphisms_of_full" xlink:title="category_theory.functor.preserves_zero_morphisms_of_full">
<path fill="none" stroke="black" d="M6880.21,-1030.4C6888.61,-975.7 6916.61,-772.63 6876.01,-727.48 6840.21,-687.67 6546.61,-664 6336.11,-651.98"/>
<polygon fill="black" stroke="black" points="6335.99,-648.47 6325.81,-651.4 6335.6,-655.46 6335.99,-648.47"/>
</a>
</g>
</g>
<!-- category_theory.of_full_and_faithful -->
<g id="node244" class="node">
<title>category_theory.of_full_and_faithful</title>
<g id="a_node244"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.of_full_and_faithful" xlink:title="category_theory.of_full_and_faithful">
<ellipse fill="black" stroke="black" cx="7093.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.full&#45;&gt;category_theory.of_full_and_faithful -->
<g id="edge434" class="edge">
<title>category_theory.full&#45;&gt;category_theory.of_full_and_faithful</title>
<g id="a_edge434"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.of_full_and_faithful" xlink:title="category_theory.of_full_and_faithful">
<path fill="none" stroke="black" d="M6907.41,-1030.4C6956.61,-1007.8 7052.91,-963.44 7083.51,-949.37"/>
<polygon fill="black" stroke="black" points="7085.31,-952.4 7092.91,-945.02 7082.37,-946.04 7085.31,-952.4"/>
</a>
</g>
</g>
<!-- category_theory.full.comp -->
<g id="node245" class="node">
<title>category_theory.full.comp</title>
<g id="a_node245"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.full.comp" xlink:title="category_theory.full.comp">
<ellipse fill="black" stroke="black" cx="6917.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.full&#45;&gt;category_theory.full.comp -->
<g id="edge435" class="edge">
<title>category_theory.full&#45;&gt;category_theory.full.comp</title>
<g id="a_edge435"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.full.comp" xlink:title="category_theory.full.comp">
<path fill="none" stroke="black" d="M6873.71,-1030.2C6876.51,-1008.1 6894.31,-965.51 6908.31,-950.44"/>
<polygon fill="black" stroke="black" points="6910.23,-953.37 6916.71,-944.99 6906.42,-947.5 6910.23,-953.37"/>
</a>
</g>
</g>
<!-- category_theory.full&#45;&gt;category_theory.full.comp -->
<g id="edge436" class="edge">
<title>category_theory.full&#45;&gt;category_theory.full.comp</title>
<g id="a_edge436"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.full.comp" xlink:title="category_theory.full.comp">
<path fill="none" stroke="black" d="M6883.41,-1030.2C6891.51,-1009.8 6906.31,-972.14 6913.21,-954.52"/>
<polygon fill="black" stroke="black" points="6916.5,-955.74 6916.91,-945.15 6909.99,-953.17 6916.5,-955.74"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_colimits_of_shape -->
<g id="node246" class="node">
<title>category_theory.limits.reflects_colimits_of_shape</title>
<g id="a_node246"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.reflects_colimits_of_shape" xlink:title="category_theory.limits.reflects_colimits_of_shape">
<polygon fill="none" stroke="black" points="7751.01,-1060 7325.01,-1060 7325.01,-1029 7751.01,-1029 7751.01,-1060"/>
<text text-anchor="middle" x="7538.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.reflects_colimits_of_shape</text>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_colimits_of_size&#45;&gt;category_theory.limits.reflects_colimits_of_shape -->
<g id="edge437" class="edge">
<title>category_theory.limits.reflects_colimits_of_size&#45;&gt;category_theory.limits.reflects_colimits_of_shape</title>
<g id="a_edge437"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.reflects_colimits_of_shape_of_reflects_colimits" xlink:title="category_theory.limits.reflects_colimits_of_shape_of_reflects_colimits">
<path fill="none" stroke="black" d="M9003.31,-1133.1C8723.81,-1116.9 8208.41,-1086.8 7758.01,-1059.6"/>
<polygon fill="black" stroke="black" points="7757.9,-1056.09 7747.71,-1059 7757.49,-1063.08 7757.9,-1056.09"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_reflects_colimits -->
<g id="node247" class="node">
<title>category_theory.limits.comp_reflects_colimits</title>
<g id="a_node247"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_colimits" xlink:title="category_theory.limits.comp_reflects_colimits">
<ellipse fill="black" stroke="black" cx="9644.01" cy="-1044.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_colimits_of_size&#45;&gt;category_theory.limits.comp_reflects_colimits -->
<g id="edge438" class="edge">
<title>category_theory.limits.reflects_colimits_of_size&#45;&gt;category_theory.limits.comp_reflects_colimits</title>
<g id="a_edge438"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_colimits" xlink:title="category_theory.limits.comp_reflects_colimits">
<path fill="none" stroke="black" d="M9370.01,-1131.5C9446.61,-1120 9537.41,-1098.7 9612.01,-1059.5 9617.91,-1056.4 9623.11,-1050 9633.51,-1047.2"/>
<polygon fill="black" stroke="black" points="9634.1,-1050.66 9643.61,-1046 9633.27,-1043.7 9634.1,-1050.66"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_colimits_of_size&#45;&gt;category_theory.limits.comp_reflects_colimits -->
<g id="edge439" class="edge">
<title>category_theory.limits.reflects_colimits_of_size&#45;&gt;category_theory.limits.comp_reflects_colimits</title>
<g id="a_edge439"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_colimits" xlink:title="category_theory.limits.comp_reflects_colimits">
<path fill="none" stroke="black" d="M9386.51,-1131.5C9464.61,-1120 9555.41,-1098.7 9630.01,-1059.5 9632.71,-1058.1 9635.21,-1056 9637.41,-1053.9"/>
<polygon fill="black" stroke="black" points="9640.2,-1056.02 9643.91,-1046.1 9634.82,-1051.54 9640.2,-1056.02"/>
</a>
</g>
</g>
<!-- category_theory.creates_colimits_of_size&#45;&gt;category_theory.limits.reflects_colimits_of_size -->
<g id="edge440" class="edge">
<title>category_theory.creates_colimits_of_size&#45;&gt;category_theory.limits.reflects_colimits_of_size</title>
<g id="a_edge440"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.reflects_colimits_of_creates_colimits" xlink:title="category_theory.reflects_colimits_of_creates_colimits">
<path fill="none" stroke="black" d="M9354.01,-1232.4C9324.71,-1215.2 9273.81,-1185.2 9240.81,-1165.7"/>
<polygon fill="black" stroke="black" points="9242.42,-1162.59 9232.01,-1160.6 9238.91,-1168.64 9242.42,-1162.59"/>
</a>
</g>
</g>
<!-- category_theory.comp_creates_colimits -->
<g id="node248" class="node">
<title>category_theory.comp_creates_colimits</title>
<g id="a_node248"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.comp_creates_colimits" xlink:title="category_theory.comp_creates_colimits">
<ellipse fill="black" stroke="black" cx="9433.01" cy="-1145.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.creates_colimits_of_size&#45;&gt;category_theory.comp_creates_colimits -->
<g id="edge441" class="edge">
<title>category_theory.creates_colimits_of_size&#45;&gt;category_theory.comp_creates_colimits</title>
<g id="a_edge441"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.comp_creates_colimits" xlink:title="category_theory.comp_creates_colimits">
<path fill="none" stroke="black" d="M9375.11,-1232.2C9381.71,-1209.9 9407.21,-1166.7 9423.81,-1152"/>
<polygon fill="black" stroke="black" points="9425.71,-1154.95 9432.71,-1147 9422.28,-1148.85 9425.71,-1154.95"/>
</a>
</g>
</g>
<!-- category_theory.creates_colimits_of_size&#45;&gt;category_theory.comp_creates_colimits -->
<g id="edge442" class="edge">
<title>category_theory.creates_colimits_of_size&#45;&gt;category_theory.comp_creates_colimits</title>
<g id="a_edge442"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.comp_creates_colimits" xlink:title="category_theory.comp_creates_colimits">
<path fill="none" stroke="black" d="M9384.81,-1232.2C9396.41,-1211.6 9418.11,-1173.4 9427.91,-1156"/>
<polygon fill="black" stroke="black" points="9431.02,-1157.62 9432.91,-1147.2 9424.93,-1154.17 9431.02,-1157.62"/>
</a>
</g>
</g>
<!-- category_theory.preserves_colimits_of_creates_colimits_and_has_colimits -->
<g id="node249" class="node">
<title>category_theory.preserves_colimits_of_creates_colimits_and_has_colimits</title>
<g id="a_node249"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.preserves_colimits_of_creates_colimits_and_has_colimits" xlink:title="category_theory.preserves_colimits_of_creates_colimits_and_has_colimits">
<ellipse fill="black" stroke="black" cx="7975.01" cy="-1145.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.creates_colimits_of_size&#45;&gt;category_theory.preserves_colimits_of_creates_colimits_and_has_colimits -->
<g id="edge443" class="edge">
<title>category_theory.creates_colimits_of_size&#45;&gt;category_theory.preserves_colimits_of_creates_colimits_and_has_colimits</title>
<g id="a_edge443"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.preserves_colimits_of_creates_colimits_and_has_colimits" xlink:title="category_theory.preserves_colimits_of_creates_colimits_and_has_colimits">
<path fill="none" stroke="black" d="M9204.41,-1233.8C8853.61,-1209 8082.41,-1154.6 7985.21,-1147.7"/>
<polygon fill="black" stroke="black" points="7985.43,-1144.21 7975.21,-1147 7984.95,-1151.19 7985.43,-1144.21"/>
</a>
</g>
</g>
<!-- category_theory.faithful&#45;&gt;category_theory.functor.reflects_monomorphisms -->
<g id="edge444" class="edge">
<title>category_theory.faithful&#45;&gt;category_theory.functor.reflects_monomorphisms</title>
<g id="a_edge444"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_monomorphisms_of_faithful" xlink:title="category_theory.functor.reflects_monomorphisms_of_faithful">
<path fill="none" stroke="black" d="M7255.81,-1031.3C7258.61,-1031 7261.31,-1030.7 7264.01,-1030.5 7553.51,-1001.5 7889.61,-974.84 8096.51,-959.26"/>
<polygon fill="black" stroke="black" points="8096.9,-962.74 8106.61,-958.5 8096.38,-955.76 8096.9,-962.74"/>
</a>
</g>
</g>
<!-- category_theory.faithful&#45;&gt;category_theory.of_full_and_faithful -->
<g id="edge445" class="edge">
<title>category_theory.faithful&#45;&gt;category_theory.of_full_and_faithful</title>
<g id="a_edge445"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.of_full_and_faithful" xlink:title="category_theory.of_full_and_faithful">
<path fill="none" stroke="black" d="M7141.21,-1030.2C7129.61,-1009.6 7107.91,-971.38 7098.11,-954"/>
<polygon fill="black" stroke="black" points="7101.08,-952.13 7093.11,-945.15 7094.99,-955.58 7101.08,-952.13"/>
</a>
</g>
</g>
<!-- category_theory.functor.reflects_epimorphisms -->
<g id="node250" class="node">
<title>category_theory.functor.reflects_epimorphisms</title>
<g id="a_node250"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_epimorphisms" xlink:title="category_theory.functor.reflects_epimorphisms">
<polygon fill="none" stroke="black" points="7556.01,-958.98 7164.01,-958.98 7164.01,-927.98 7556.01,-927.98 7556.01,-958.98"/>
<text text-anchor="middle" x="7360.01" y="-939.78" font-family="Courier,monospace" font-size="14.00">category_theory.functor.reflects_epimorphisms</text>
</a>
</g>
</g>
<!-- category_theory.faithful&#45;&gt;category_theory.functor.reflects_epimorphisms -->
<g id="edge446" class="edge">
<title>category_theory.faithful&#45;&gt;category_theory.functor.reflects_epimorphisms</title>
<g id="a_edge446"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_epimorphisms_of_faithful" xlink:title="category_theory.functor.reflects_epimorphisms_of_faithful">
<path fill="none" stroke="black" d="M7177.91,-1030.4C7215.31,-1012.9 7280.51,-982.28 7321.91,-962.86"/>
<polygon fill="black" stroke="black" points="7323.56,-965.96 7331.11,-958.53 7320.58,-959.62 7323.56,-965.96"/>
</a>
</g>
</g>
<!-- category_theory.faithful.comp -->
<g id="node251" class="node">
<title>category_theory.faithful.comp</title>
<g id="a_node251"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.faithful.comp" xlink:title="category_theory.faithful.comp">
<ellipse fill="black" stroke="black" cx="7149.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.faithful&#45;&gt;category_theory.faithful.comp -->
<g id="edge447" class="edge">
<title>category_theory.faithful&#45;&gt;category_theory.faithful.comp</title>
<g id="a_edge447"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.faithful.comp" xlink:title="category_theory.faithful.comp">
<path fill="none" stroke="black" d="M7139.31,-1030.2C7133.61,-1008.9 7134.31,-968.72 7141.51,-952.28"/>
<polygon fill="black" stroke="black" points="7144.18,-954.56 7148.71,-944.99 7139.2,-949.65 7144.18,-954.56"/>
</a>
</g>
</g>
<!-- category_theory.faithful&#45;&gt;category_theory.faithful.comp -->
<g id="edge448" class="edge">
<title>category_theory.faithful&#45;&gt;category_theory.faithful.comp</title>
<g id="a_edge448"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.faithful.comp" xlink:title="category_theory.faithful.comp">
<path fill="none" stroke="black" d="M7149.01,-1030.2C7149.01,-1010.1 7149.01,-973.28 7149.01,-955.34"/>
<polygon fill="black" stroke="black" points="7152.51,-955.15 7149.01,-945.15 7145.51,-955.15 7152.51,-955.15"/>
</a>
</g>
</g>
<!-- category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful -->
<g id="node252" class="node">
<title>category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful</title>
<g id="a_node252"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful" xlink:title="category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful">
<ellipse fill="black" stroke="black" cx="6050.01" cy="-539.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.faithful&#45;&gt;category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful -->
<g id="edge449" class="edge">
<title>category_theory.faithful&#45;&gt;category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful</title>
<g id="a_edge449"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful" xlink:title="category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful">
<path fill="none" stroke="black" d="M7142.41,-1030.4C7132.11,-1006.9 7115.51,-958.09 7140.01,-929.48 7277.61,-768.9 7707.11,-1013.7 7605.01,-828.48 7564.41,-754.84 7521.71,-761.87 7445.01,-727.48 7296.51,-660.93 7253.31,-654.73 7093.01,-626.48 6866.21,-586.5 6258.21,-670.16 6059.01,-554.48 6057.21,-553.42 6055.61,-551.82 6054.41,-550.09"/>
<polygon fill="black" stroke="black" points="6057.55,-548.54 6050.01,-541.09 6051.26,-551.61 6057.55,-548.54"/>
</a>
</g>
</g>
<!-- category_theory.is_left_adjoint&#45;&gt;category_theory.functor.preserves_zero_morphisms -->
<g id="edge450" class="edge">
<title>category_theory.is_left_adjoint&#45;&gt;category_theory.functor.preserves_zero_morphisms</title>
<g id="a_edge450"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_zero_morphisms_of_is_left_adjoint" xlink:title="category_theory.functor.preserves_zero_morphisms_of_is_left_adjoint">
<path fill="none" stroke="black" d="M6295.71,-1131.5C6360.11,-1118.6 6451.91,-1095.7 6526.01,-1059.5 6545.41,-1050 6546.01,-1040.8 6565.01,-1030.5 6644.61,-986.99 6681.81,-1010.7 6756.01,-958.48 6812.71,-918.63 6869.31,-892.16 6842.01,-828.48 6816.41,-768.67 6794.61,-755.76 6736.01,-727.48 6664.31,-692.88 6470.81,-669.77 6319.61,-656.39"/>
<polygon fill="black" stroke="black" points="6319.48,-652.87 6309.21,-655.49 6318.87,-659.84 6319.48,-652.87"/>
</a>
</g>
</g>
<!-- category_theory.functor.initial -->
<g id="node253" class="node">
<title>category_theory.functor.initial</title>
<g id="a_node253"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.initial" xlink:title="category_theory.functor.initial">
<polygon fill="none" stroke="black" points="8808.01,-1060 8534.01,-1060 8534.01,-1029 8808.01,-1029 8808.01,-1060"/>
<text text-anchor="middle" x="8671.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">category_theory.functor.initial</text>
</a>
</g>
</g>
<!-- category_theory.is_left_adjoint&#45;&gt;category_theory.functor.initial -->
<g id="edge451" class="edge">
<title>category_theory.is_left_adjoint&#45;&gt;category_theory.functor.initial</title>
<g id="a_edge451"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.initial_of_is_left_adjoint" xlink:title="category_theory.functor.initial_of_is_left_adjoint">
<path fill="none" stroke="black" d="M6351.31,-1132.1C6354.21,-1131.9 6357.11,-1131.7 6360.01,-1131.5 7317.91,-1070.7 7563.01,-1119.8 8525.71,-1059.5"/>
<polygon fill="black" stroke="black" points="8526.27,-1062.97 8536.01,-1058.8 8525.8,-1055.99 8526.27,-1062.97"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_epimorphisms -->
<g id="node254" class="node">
<title>category_theory.functor.preserves_epimorphisms</title>
<g id="a_node254"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_epimorphisms" xlink:title="category_theory.functor.preserves_epimorphisms">
<polygon fill="none" stroke="black" points="6961.01,-554.98 6561.01,-554.98 6561.01,-523.98 6961.01,-523.98 6961.01,-554.98"/>
<text text-anchor="middle" x="6761.01" y="-535.78" font-family="Courier,monospace" font-size="14.00">category_theory.functor.preserves_epimorphisms</text>
</a>
</g>
</g>
<!-- category_theory.is_left_adjoint&#45;&gt;category_theory.functor.preserves_epimorphisms -->
<g id="edge452" class="edge">
<title>category_theory.is_left_adjoint&#45;&gt;category_theory.functor.preserves_epimorphisms</title>
<g id="a_edge452"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_epimorphisms_of_is_left_adjoint" xlink:title="category_theory.functor.preserves_epimorphisms_of_is_left_adjoint">
<path fill="none" stroke="black" d="M6127.21,-1131.5C6046.11,-1117.2 5934.61,-1092.4 5905.01,-1059.5 5870.51,-1021.2 5886.01,-996.6 5886.01,-944.98 5886.01,-944.98 5886.01,-944.98 5886.01,-740.98 5886.01,-689.4 5867.41,-661.75 5905.01,-626.48 5928.51,-604.43 6310.01,-573.21 6555.71,-555.23"/>
<polygon fill="black" stroke="black" points="6556.1,-558.71 6565.81,-554.49 6555.58,-551.73 6556.1,-558.71"/>
</a>
</g>
</g>
<!-- category_theory.adjunction.left_adjoint_of_comp -->
<g id="node255" class="node">
<title>category_theory.adjunction.left_adjoint_of_comp</title>
<g id="a_node255"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.left_adjoint_of_comp" xlink:title="category_theory.adjunction.left_adjoint_of_comp">
<ellipse fill="black" stroke="black" cx="6186.01" cy="-1044.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_left_adjoint&#45;&gt;category_theory.adjunction.left_adjoint_of_comp -->
<g id="edge453" class="edge">
<title>category_theory.is_left_adjoint&#45;&gt;category_theory.adjunction.left_adjoint_of_comp</title>
<g id="a_edge453"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.left_adjoint_of_comp" xlink:title="category_theory.adjunction.left_adjoint_of_comp">
<path fill="none" stroke="black" d="M6202.11,-1131.2C6190.31,-1110.6 6179.21,-1072.1 6180.61,-1054.8"/>
<polygon fill="black" stroke="black" points="6183.73,-1056.41 6185.71,-1046 6177.67,-1052.9 6183.73,-1056.41"/>
</a>
</g>
</g>
<!-- category_theory.is_left_adjoint&#45;&gt;category_theory.adjunction.left_adjoint_of_comp -->
<g id="edge454" class="edge">
<title>category_theory.is_left_adjoint&#45;&gt;category_theory.adjunction.left_adjoint_of_comp</title>
<g id="a_edge454"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.left_adjoint_of_comp" xlink:title="category_theory.adjunction.left_adjoint_of_comp">
<path fill="none" stroke="black" d="M6211.81,-1131.2C6205.71,-1111 6194.31,-1073.5 6189.01,-1055.8"/>
<polygon fill="black" stroke="black" points="6192.33,-1054.68 6186.11,-1046.1 6185.63,-1056.68 6192.33,-1054.68"/>
</a>
</g>
</g>
<!-- category_theory.is_right_adjoint&#45;&gt;category_theory.functor.preserves_zero_morphisms -->
<g id="edge455" class="edge">
<title>category_theory.is_right_adjoint&#45;&gt;category_theory.functor.preserves_zero_morphisms</title>
<g id="a_edge455"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_zero_morphisms_of_is_right_adjoint" xlink:title="category_theory.functor.preserves_zero_morphisms_of_is_right_adjoint">
<path fill="none" stroke="black" d="M5494.21,-929.39C5501.61,-886.43 5526.41,-754.78 5558.01,-727.48 5588.91,-700.83 5814.01,-672.96 5969.81,-656.55"/>
<polygon fill="black" stroke="black" points="5970.43,-660 5980.01,-655.49 5969.71,-653.04 5970.43,-660"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_monomorphisms -->
<g id="node256" class="node">
<title>category_theory.functor.preserves_monomorphisms</title>
<g id="a_node256"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_monomorphisms" xlink:title="category_theory.functor.preserves_monomorphisms">
<polygon fill="none" stroke="black" points="6473.51,-554.98 6064.51,-554.98 6064.51,-523.98 6473.51,-523.98 6473.51,-554.98"/>
<text text-anchor="middle" x="6269.01" y="-535.78" font-family="Courier,monospace" font-size="14.00">category_theory.functor.preserves_monomorphisms</text>
</a>
</g>
</g>
<!-- category_theory.is_right_adjoint&#45;&gt;category_theory.functor.preserves_monomorphisms -->
<g id="edge456" class="edge">
<title>category_theory.is_right_adjoint&#45;&gt;category_theory.functor.preserves_monomorphisms</title>
<g id="a_edge456"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_monomorphisms_of_is_right_adjoint" xlink:title="category_theory.functor.preserves_monomorphisms_of_is_right_adjoint">
<path fill="none" stroke="black" d="M5490.11,-929.39C5487.91,-912.55 5484.31,-882.97 5483.01,-857.48 5479.71,-795.17 5487.81,-767.09 5536.01,-727.48 5623.01,-655.97 5671.21,-688.25 5779.01,-655.48 5820.41,-642.89 5830.11,-637.49 5872.01,-626.48 5979.91,-598.1 6106.11,-572.14 6186.71,-556.45"/>
<polygon fill="black" stroke="black" points="6187.66,-559.83 6196.81,-554.49 6186.33,-552.96 6187.66,-559.83"/>
</a>
</g>
</g>
<!-- category_theory.adjunction.right_adjoint_of_comp -->
<g id="node257" class="node">
<title>category_theory.adjunction.right_adjoint_of_comp</title>
<g id="a_node257"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.right_adjoint_of_comp" xlink:title="category_theory.adjunction.right_adjoint_of_comp">
<ellipse fill="black" stroke="black" cx="5492.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_right_adjoint&#45;&gt;category_theory.adjunction.right_adjoint_of_comp -->
<g id="edge457" class="edge">
<title>category_theory.is_right_adjoint&#45;&gt;category_theory.adjunction.right_adjoint_of_comp</title>
<g id="a_edge457"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.right_adjoint_of_comp" xlink:title="category_theory.adjunction.right_adjoint_of_comp">
<path fill="none" stroke="black" d="M5482.31,-929.21C5476.61,-907.92 5477.31,-867.72 5484.51,-851.28"/>
<polygon fill="black" stroke="black" points="5487.18,-853.56 5491.71,-843.99 5482.2,-848.65 5487.18,-853.56"/>
</a>
</g>
</g>
<!-- category_theory.is_right_adjoint&#45;&gt;category_theory.adjunction.right_adjoint_of_comp -->
<g id="edge458" class="edge">
<title>category_theory.is_right_adjoint&#45;&gt;category_theory.adjunction.right_adjoint_of_comp</title>
<g id="a_edge458"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.right_adjoint_of_comp" xlink:title="category_theory.adjunction.right_adjoint_of_comp">
<path fill="none" stroke="black" d="M5492.01,-929.21C5492.01,-909.14 5492.01,-872.28 5492.01,-854.34"/>
<polygon fill="black" stroke="black" points="5495.51,-854.15 5492.01,-844.15 5488.51,-854.15 5495.51,-854.15"/>
</a>
</g>
</g>
<!-- category_theory.functor.final -->
<g id="node258" class="node">
<title>category_theory.functor.final</title>
<g id="a_node258"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.final" xlink:title="category_theory.functor.final">
<polygon fill="none" stroke="black" points="5860.01,-857.98 5602.01,-857.98 5602.01,-826.98 5860.01,-826.98 5860.01,-857.98"/>
<text text-anchor="middle" x="5731.01" y="-838.78" font-family="Courier,monospace" font-size="14.00">category_theory.functor.final</text>
</a>
</g>
</g>
<!-- category_theory.is_right_adjoint&#45;&gt;category_theory.functor.final -->
<g id="edge459" class="edge">
<title>category_theory.is_right_adjoint&#45;&gt;category_theory.functor.final</title>
<g id="a_edge459"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.final_of_is_right_adjoint" xlink:title="category_theory.functor.final_of_is_right_adjoint">
<path fill="none" stroke="black" d="M5524.71,-929.42C5567.41,-911.74 5642.21,-880.77 5689.01,-861.37"/>
<polygon fill="black" stroke="black" points="5690.41,-864.58 5698.31,-857.53 5687.74,-858.11 5690.41,-864.58"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_finite_colimits -->
<g id="node259" class="node">
<title>category_theory.limits.preserves_finite_colimits</title>
<g id="a_node259"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_finite_colimits" xlink:title="category_theory.limits.preserves_finite_colimits">
<polygon fill="none" stroke="black" points="8079.51,-958.98 7662.51,-958.98 7662.51,-927.98 8079.51,-927.98 8079.51,-958.98"/>
<text text-anchor="middle" x="7871.01" y="-939.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.preserves_finite_colimits</text>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimits_of_size&#45;&gt;category_theory.limits.preserves_finite_colimits -->
<g id="edge460" class="edge">
<title>category_theory.limits.preserves_colimits_of_size&#45;&gt;category_theory.limits.preserves_finite_colimits</title>
<g id="a_edge460"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_colimits.preserves_finite_colimits" xlink:title="category_theory.limits.preserves_colimits.preserves_finite_colimits">
<path fill="none" stroke="black" d="M7960.51,-1030.2C7942.91,-1013.4 7913.01,-984.95 7892.61,-965.57"/>
<polygon fill="black" stroke="black" points="7894.97,-962.98 7885.31,-958.63 7890.15,-968.06 7894.97,-962.98"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_preserves_colimits -->
<g id="node260" class="node">
<title>category_theory.limits.comp_preserves_colimits</title>
<g id="a_node260"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_colimits" xlink:title="category_theory.limits.comp_preserves_colimits">
<ellipse fill="black" stroke="black" cx="8861.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimits_of_size&#45;&gt;category_theory.limits.comp_preserves_colimits -->
<g id="edge461" class="edge">
<title>category_theory.limits.preserves_colimits_of_size&#45;&gt;category_theory.limits.comp_preserves_colimits</title>
<g id="a_edge461"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_colimits" xlink:title="category_theory.limits.comp_preserves_colimits">
<path fill="none" stroke="black" d="M8142.21,-1030.5C8383.81,-1011.2 8804.51,-976.16 8834.01,-958.48 8838.71,-955.63 8841.51,-949.21 8850.71,-946.37"/>
<polygon fill="black" stroke="black" points="8851.2,-949.84 8860.61,-944.98 8850.22,-942.9 8851.2,-949.84"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimits_of_size&#45;&gt;category_theory.limits.comp_preserves_colimits -->
<g id="edge462" class="edge">
<title>category_theory.limits.preserves_colimits_of_size&#45;&gt;category_theory.limits.comp_preserves_colimits</title>
<g id="a_edge462"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_colimits" xlink:title="category_theory.limits.comp_preserves_colimits">
<path fill="none" stroke="black" d="M8154.01,-1030.5C8401.81,-1011.2 8822.51,-976.16 8852.01,-958.48 8853.71,-957.45 8855.21,-955.94 8856.41,-954.31"/>
<polygon fill="black" stroke="black" points="8859.68,-955.6 8861.01,-945.09 8853.42,-952.48 8859.68,-955.6"/>
</a>
</g>
</g>
<!-- category_theory.functor.is_equivalence_trans&#45;&gt;category_theory.is_equivalence -->
<g id="edge463" class="edge">
<title>category_theory.functor.is_equivalence_trans&#45;&gt;category_theory.is_equivalence</title>
<g id="a_edge463"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.is_equivalence_trans" xlink:title="category_theory.functor.is_equivalence_trans">
<path fill="none" stroke="black" d="M9989.41,-1248C10007.01,-1248.2 10004.01,-1257.7 9998.01,-1261.5 9921.31,-1309.8 9677.11,-1331.7 9518.61,-1341"/>
<polygon fill="black" stroke="black" points="9518.09,-1337.52 9508.31,-1341.6 9518.5,-1344.51 9518.09,-1337.52"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_zero_morphisms&#45;&gt;category_theory.limits.category_theory.functor.map.has_kernel -->
<g id="edge465" class="edge">
<title>category_theory.functor.preserves_zero_morphisms&#45;&gt;category_theory.limits.category_theory.functor.map.has_kernel</title>
<g id="a_edge465"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.functor.map.has_kernel" xlink:title="category_theory.limits.category_theory.functor.map.has_kernel">
<path fill="none" stroke="black" d="M6080.31,-626.47C6009.11,-602.73 5854.71,-553.42 5721.01,-525.48 5467.51,-472.5 5150.41,-445.58 5090.11,-440.77"/>
<polygon fill="black" stroke="black" points="5090.36,-437.28 5080.11,-439.98 5089.81,-444.26 5090.36,-437.28"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_zero_morphisms&#45;&gt;category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful -->
<g id="edge464" class="edge">
<title>category_theory.functor.preserves_zero_morphisms&#45;&gt;category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful</title>
<g id="a_edge464"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful" xlink:title="category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful">
<path fill="none" stroke="black" d="M6110.11,-626.45C6098.01,-609.67 6076.71,-580.15 6059.01,-554.48 6057.91,-552.91 6056.81,-551.24 6055.71,-549.61"/>
<polygon fill="black" stroke="black" points="6058.52,-547.51 6050.11,-541.07 6052.67,-551.35 6058.52,-547.51"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_zero_morphisms&#45;&gt;category_theory.limits.category_theory.functor.map.has_cokernel -->
<g id="edge466" class="edge">
<title>category_theory.functor.preserves_zero_morphisms&#45;&gt;category_theory.limits.category_theory.functor.map.has_cokernel</title>
<g id="a_edge466"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.functor.map.has_cokernel" xlink:title="category_theory.limits.category_theory.functor.map.has_cokernel">
<path fill="none" stroke="black" d="M6325.71,-632.13C6561.41,-621.14 6921.11,-597.53 6967.01,-554.48 7004.61,-519.19 6986.01,-491.56 6986.01,-439.98 6986.01,-439.98 6986.01,-439.98 6986.01,-235.98 6986.01,-98.67 5827.11,-55.03 5705.31,-50.82"/>
<polygon fill="black" stroke="black" points="5705.23,-47.32 5695.11,-50.48 5704.99,-54.31 5705.23,-47.32"/>
</a>
</g>
</g>
<!-- category_theory.reflects_isomorphisms -->
<g id="node262" class="node">
<title>category_theory.reflects_isomorphisms</title>
<g id="a_node262"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.reflects_isomorphisms" xlink:title="category_theory.reflects_isomorphisms">
<polygon fill="none" stroke="black" points="7598.51,-857.98 7273.51,-857.98 7273.51,-826.98 7598.51,-826.98 7598.51,-857.98"/>
<text text-anchor="middle" x="7436.01" y="-838.78" font-family="Courier,monospace" font-size="14.00">category_theory.reflects_isomorphisms</text>
</a>
</g>
</g>
<!-- category_theory.of_full_and_faithful&#45;&gt;category_theory.reflects_isomorphisms -->
<g id="edge467" class="edge">
<title>category_theory.of_full_and_faithful&#45;&gt;category_theory.reflects_isomorphisms</title>
<g id="a_edge467"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.of_full_and_faithful" xlink:title="category_theory.of_full_and_faithful">
<path fill="none" stroke="black" d="M7093.11,-942.87C7093.81,-941.84 7099.91,-933.44 7107.01,-929.48 7172.41,-892.85 7253.81,-871.52 7319.41,-859.33"/>
<polygon fill="black" stroke="black" points="7320.11,-862.76 7329.31,-857.52 7318.85,-855.88 7320.11,-862.76"/>
</a>
</g>
</g>
<!-- category_theory.full.comp&#45;&gt;category_theory.full -->
<g id="edge468" class="edge">
<title>category_theory.full.comp&#45;&gt;category_theory.full</title>
<g id="a_edge468"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.full.comp" xlink:title="category_theory.full.comp">
<path fill="none" stroke="black" d="M6917.31,-944.99C6929.21,-945.8 6914.51,-992.56 6898.41,-1021.5"/>
<polygon fill="black" stroke="black" points="6895.33,-1019.84 6893.11,-1030.2 6901.31,-1023.48 6895.33,-1019.84"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_colimits_of_shape&#45;&gt;category_theory.functor.reflects_epimorphisms -->
<g id="edge469" class="edge">
<title>category_theory.limits.reflects_colimits_of_shape&#45;&gt;category_theory.functor.reflects_epimorphisms</title>
<g id="a_edge469"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.reflects_epimorphisms_of_reflects_colimits_of_shape" xlink:title="category_theory.reflects_epimorphisms_of_reflects_colimits_of_shape">
<path fill="none" stroke="black" d="M7513.61,-1030.4C7482.41,-1013.1 7428.21,-982.92 7393.31,-963.47"/>
<polygon fill="black" stroke="black" points="7394.86,-960.32 7384.41,-958.53 7391.46,-966.44 7394.86,-960.32"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_reflects_colimits_of_shape -->
<g id="node263" class="node">
<title>category_theory.limits.comp_reflects_colimits_of_shape</title>
<g id="a_node263"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_colimits_of_shape" xlink:title="category_theory.limits.comp_reflects_colimits_of_shape">
<ellipse fill="black" stroke="black" cx="7647.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_colimits_of_shape&#45;&gt;category_theory.limits.comp_reflects_colimits_of_shape -->
<g id="edge470" class="edge">
<title>category_theory.limits.reflects_colimits_of_shape&#45;&gt;category_theory.limits.comp_reflects_colimits_of_shape</title>
<g id="a_edge470"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_colimits_of_shape" xlink:title="category_theory.limits.comp_reflects_colimits_of_shape">
<path fill="none" stroke="black" d="M7540.91,-1030.2C7554.61,-1013.5 7587.41,-984.19 7615.01,-958.48 7619.91,-953.91 7625.61,-948.31 7636.31,-946.03"/>
<polygon fill="black" stroke="black" points="7637.02,-949.48 7646.61,-944.98 7636.31,-942.51 7637.02,-949.48"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_colimits_of_shape&#45;&gt;category_theory.limits.comp_reflects_colimits_of_shape -->
<g id="edge471" class="edge">
<title>category_theory.limits.reflects_colimits_of_shape&#45;&gt;category_theory.limits.comp_reflects_colimits_of_shape</title>
<g id="a_edge471"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_colimits_of_shape" xlink:title="category_theory.limits.comp_reflects_colimits_of_shape">
<path fill="none" stroke="black" d="M7553.61,-1030.2C7572.61,-1013.5 7605.41,-984.19 7633.01,-958.48 7635.11,-956.49 7637.41,-954.31 7639.51,-952.3"/>
<polygon fill="black" stroke="black" points="7642.21,-954.56 7646.91,-945.07 7637.32,-949.55 7642.21,-954.56"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_colimit -->
<g id="node264" class="node">
<title>category_theory.limits.reflects_colimit</title>
<g id="a_node264"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.reflects_colimit" xlink:title="category_theory.limits.reflects_colimit">
<polygon fill="none" stroke="black" points="8846.01,-958.98 8504.01,-958.98 8504.01,-927.98 8846.01,-927.98 8846.01,-958.98"/>
<text text-anchor="middle" x="8675.01" y="-939.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.reflects_colimit</text>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_colimits_of_shape&#45;&gt;category_theory.limits.reflects_colimit -->
<g id="edge472" class="edge">
<title>category_theory.limits.reflects_colimits_of_shape&#45;&gt;category_theory.limits.reflects_colimit</title>
<g id="a_edge472"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.reflects_colimit_of_reflects_colimits_of_shape" xlink:title="category_theory.limits.reflects_colimit_of_reflects_colimits_of_shape">
<path fill="none" stroke="black" d="M7693.11,-1030.5C7906.91,-1011.9 8290.61,-978.45 8509.61,-959.38"/>
<polygon fill="black" stroke="black" points="8509.96,-962.86 8519.61,-958.51 8509.35,-955.89 8509.96,-962.86"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_reflects_colimits&#45;&gt;category_theory.limits.reflects_colimits_of_size -->
<g id="edge473" class="edge">
<title>category_theory.limits.comp_reflects_colimits&#45;&gt;category_theory.limits.reflects_colimits_of_size</title>
<g id="a_edge473"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_colimits" xlink:title="category_theory.limits.comp_reflects_colimits">
<path fill="none" stroke="black" d="M9644.41,-1046C9661.91,-1046.1 9655.61,-1055.5 9648.01,-1059.5 9576.61,-1097 9490.41,-1118.1 9413.31,-1129.9"/>
<polygon fill="black" stroke="black" points="9412.27,-1126.52 9402.91,-1131.5 9413.33,-1133.44 9412.27,-1126.52"/>
</a>
</g>
</g>
<!-- category_theory.comp_creates_colimits&#45;&gt;category_theory.creates_colimits_of_size -->
<g id="edge474" class="edge">
<title>category_theory.comp_creates_colimits&#45;&gt;category_theory.creates_colimits_of_size</title>
<g id="a_edge474"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.comp_creates_colimits" xlink:title="category_theory.comp_creates_colimits">
<path fill="none" stroke="black" d="M9433.31,-1147C9445.21,-1147.8 9421.91,-1195.4 9400.71,-1224.3"/>
<polygon fill="black" stroke="black" points="9397.93,-1222.17 9394.51,-1232.2 9403.44,-1226.49 9397.93,-1222.17"/>
</a>
</g>
</g>
<!-- category_theory.preserves_colimits_of_creates_colimits_and_has_colimits&#45;&gt;category_theory.limits.preserves_colimits_of_size -->
<g id="edge475" class="edge">
<title>category_theory.preserves_colimits_of_creates_colimits_and_has_colimits&#45;&gt;category_theory.limits.preserves_colimits_of_size</title>
<g id="a_edge475"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.preserves_colimits_of_creates_colimits_and_has_colimits" xlink:title="category_theory.preserves_colimits_of_creates_colimits_and_has_colimits">
<path fill="none" stroke="black" d="M7975.01,-1144.9C7975.01,-1142.9 7975.01,-1098.5 7975.01,-1069.9"/>
<polygon fill="black" stroke="black" points="7978.51,-1069.8 7975.01,-1059.8 7971.51,-1069.8 7978.51,-1069.8"/>
</a>
</g>
</g>
<!-- category_theory.functor.reflects_epimorphisms_comp -->
<g id="node265" class="node">
<title>category_theory.functor.reflects_epimorphisms_comp</title>
<g id="a_node265"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_epimorphisms_comp" xlink:title="category_theory.functor.reflects_epimorphisms_comp">
<ellipse fill="black" stroke="black" cx="7652.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.functor.reflects_epimorphisms&#45;&gt;category_theory.functor.reflects_epimorphisms_comp -->
<g id="edge476" class="edge">
<title>category_theory.functor.reflects_epimorphisms&#45;&gt;category_theory.functor.reflects_epimorphisms_comp</title>
<g id="a_edge476"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_epimorphisms_comp" xlink:title="category_theory.functor.reflects_epimorphisms_comp">
<path fill="none" stroke="black" d="M7422.01,-929.48C7477.01,-916.93 7557.31,-894.48 7620.01,-857.48 7625.81,-854.08 7631.01,-847.84 7641.51,-845.2"/>
<polygon fill="black" stroke="black" points="7642.11,-848.65 7651.61,-843.98 7641.27,-841.7 7642.11,-848.65"/>
</a>
</g>
</g>
<!-- category_theory.functor.reflects_epimorphisms&#45;&gt;category_theory.functor.reflects_epimorphisms_comp -->
<g id="edge477" class="edge">
<title>category_theory.functor.reflects_epimorphisms&#45;&gt;category_theory.functor.reflects_epimorphisms_comp</title>
<g id="a_edge477"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_epimorphisms_comp" xlink:title="category_theory.functor.reflects_epimorphisms_comp">
<path fill="none" stroke="black" d="M7436.81,-929.48C7495.01,-916.93 7575.31,-894.48 7638.01,-857.48 7640.61,-855.94 7643.11,-853.81 7645.31,-851.7"/>
<polygon fill="black" stroke="black" points="7648.01,-853.93 7651.91,-844.08 7642.72,-849.35 7648.01,-853.93"/>
</a>
</g>
</g>
<!-- category_theory.faithful.comp&#45;&gt;category_theory.faithful -->
<g id="edge478" class="edge">
<title>category_theory.faithful.comp&#45;&gt;category_theory.faithful</title>
<g id="a_edge478"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.faithful.comp" xlink:title="category_theory.faithful.comp">
<path fill="none" stroke="black" d="M7149.31,-944.99C7161.41,-945.79 7165.11,-991.36 7160.71,-1020.4"/>
<polygon fill="black" stroke="black" points="7157.28,-1019.7 7158.71,-1030.2 7164.14,-1021.1 7157.28,-1019.7"/>
</a>
</g>
</g>
<!-- category_theory.functor.reflects_exact_sequences -->
<g id="node266" class="node">
<title>category_theory.functor.reflects_exact_sequences</title>
<g id="a_node266"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_exact_sequences" xlink:title="category_theory.functor.reflects_exact_sequences">
<polygon fill="none" stroke="black" points="6258.51,-453.98 5841.51,-453.98 5841.51,-422.98 6258.51,-422.98 6258.51,-453.98"/>
<text text-anchor="middle" x="6050.01" y="-434.78" font-family="Courier,monospace" font-size="14.00">category_theory.functor.reflects_exact_sequences</text>
</a>
</g>
</g>
<!-- category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful&#45;&gt;category_theory.functor.reflects_exact_sequences -->
<g id="edge479" class="edge">
<title>category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful&#45;&gt;category_theory.functor.reflects_exact_sequences</title>
<g id="a_edge479"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful" xlink:title="category_theory.functor.reflects_exact_sequences_of_preserves_zero_morphisms_of_faithful">
<path fill="none" stroke="black" d="M6050.01,-538.91C6050.01,-536.88 6050.01,-492.46 6050.01,-463.84"/>
<polygon fill="black" stroke="black" points="6053.51,-463.77 6050.01,-453.77 6046.51,-463.77 6053.51,-463.77"/>
</a>
</g>
</g>
<!-- category_theory.functor.initial.comp_has_limit -->
<g id="node267" class="node">
<title>category_theory.functor.initial.comp_has_limit</title>
<g id="a_node267"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.initial.comp_has_limit" xlink:title="category_theory.functor.initial.comp_has_limit">
<ellipse fill="black" stroke="black" cx="8879.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.functor.initial&#45;&gt;category_theory.functor.initial.comp_has_limit -->
<g id="edge480" class="edge">
<title>category_theory.functor.initial&#45;&gt;category_theory.functor.initial.comp_has_limit</title>
<g id="a_edge480"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.initial.comp_has_limit" xlink:title="category_theory.functor.initial.comp_has_limit">
<path fill="none" stroke="black" d="M8723.71,-1030.4C8766.61,-1017.4 8826.91,-994.33 8870.01,-958.48 8871.51,-957.2 8872.91,-955.58 8874.11,-953.92"/>
<polygon fill="black" stroke="black" points="8877.23,-955.52 8879.01,-945.08 8871.1,-952.13 8877.23,-955.52"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_epimorphisms&#45;&gt;category_theory.functor.map_epi -->
<g id="edge481" class="edge">
<title>category_theory.functor.preserves_epimorphisms&#45;&gt;category_theory.functor.map_epi</title>
<g id="a_edge481"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.map_epi" xlink:title="category_theory.functor.map_epi">
<path fill="none" stroke="black" d="M6714.31,-525.47C6629.31,-501.4 6443.11,-451.12 6283.01,-424.48 5445.81,-285.23 4394.21,-242.65 4280.21,-238.35"/>
<polygon fill="black" stroke="black" points="4280.24,-234.85 4270.11,-237.98 4279.98,-241.84 4280.24,-234.85"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_epimorphisms_comp -->
<g id="node268" class="node">
<title>category_theory.functor.preserves_epimorphisms_comp</title>
<g id="a_node268"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_epimorphisms_comp" xlink:title="category_theory.functor.preserves_epimorphisms_comp">
<ellipse fill="black" stroke="black" cx="6761.01" cy="-438.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_epimorphisms&#45;&gt;category_theory.functor.preserves_epimorphisms_comp -->
<g id="edge482" class="edge">
<title>category_theory.functor.preserves_epimorphisms&#45;&gt;category_theory.functor.preserves_epimorphisms_comp</title>
<g id="a_edge482"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_epimorphisms_comp" xlink:title="category_theory.functor.preserves_epimorphisms_comp">
<path fill="none" stroke="black" d="M6751.31,-525.21C6745.61,-503.92 6746.31,-463.72 6753.51,-447.28"/>
<polygon fill="black" stroke="black" points="6756.18,-449.56 6760.71,-439.99 6751.2,-444.65 6756.18,-449.56"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_epimorphisms&#45;&gt;category_theory.functor.preserves_epimorphisms_comp -->
<g id="edge483" class="edge">
<title>category_theory.functor.preserves_epimorphisms&#45;&gt;category_theory.functor.preserves_epimorphisms_comp</title>
<g id="a_edge483"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_epimorphisms_comp" xlink:title="category_theory.functor.preserves_epimorphisms_comp">
<path fill="none" stroke="black" d="M6761.01,-525.21C6761.01,-505.14 6761.01,-468.28 6761.01,-450.34"/>
<polygon fill="black" stroke="black" points="6764.51,-450.15 6761.01,-440.15 6757.51,-450.15 6764.51,-450.15"/>
</a>
</g>
</g>
<!-- category_theory.adjunction.left_adjoint_of_comp&#45;&gt;category_theory.is_left_adjoint -->
<g id="edge484" class="edge">
<title>category_theory.adjunction.left_adjoint_of_comp&#45;&gt;category_theory.is_left_adjoint</title>
<g id="a_edge484"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.left_adjoint_of_comp" xlink:title="category_theory.adjunction.left_adjoint_of_comp">
<path fill="none" stroke="black" d="M6186.31,-1046C6198.51,-1046.8 6216.01,-1092 6220.51,-1121"/>
<polygon fill="black" stroke="black" points="6217.05,-1121.59 6221.51,-1131.2 6224.02,-1120.91 6217.05,-1121.59"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_monomorphisms&#45;&gt;category_theory.functor.map_mono -->
<g id="edge485" class="edge">
<title>category_theory.functor.preserves_monomorphisms&#45;&gt;category_theory.functor.map_mono</title>
<g id="a_edge485"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.map_mono" xlink:title="category_theory.functor.map_mono">
<path fill="none" stroke="black" d="M6075.81,-525.48C5838.91,-508.87 5425.41,-479.64 5071.01,-453.48 5007.51,-448.79 4931.11,-442.87 4904.11,-440.77"/>
<polygon fill="black" stroke="black" points="4904.36,-437.28 4894.11,-439.99 4903.81,-444.26 4904.36,-437.28"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_monomorphisms_comp -->
<g id="node269" class="node">
<title>category_theory.functor.preserves_monomorphisms_comp</title>
<g id="a_node269"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_monomorphisms_comp" xlink:title="category_theory.functor.preserves_monomorphisms_comp">
<ellipse fill="black" stroke="black" cx="6274.01" cy="-438.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_monomorphisms&#45;&gt;category_theory.functor.preserves_monomorphisms_comp -->
<g id="edge486" class="edge">
<title>category_theory.functor.preserves_monomorphisms&#45;&gt;category_theory.functor.preserves_monomorphisms_comp</title>
<g id="a_edge486"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_monomorphisms_comp" xlink:title="category_theory.functor.preserves_monomorphisms_comp">
<path fill="none" stroke="black" d="M6260.01,-525.21C6255.31,-503.92 6258.11,-463.72 6266.11,-447.28"/>
<polygon fill="black" stroke="black" points="6268.92,-449.44 6273.71,-439.99 6264.07,-444.39 6268.92,-449.44"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_monomorphisms&#45;&gt;category_theory.functor.preserves_monomorphisms_comp -->
<g id="edge487" class="edge">
<title>category_theory.functor.preserves_monomorphisms&#45;&gt;category_theory.functor.preserves_monomorphisms_comp</title>
<g id="a_edge487"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_monomorphisms_comp" xlink:title="category_theory.functor.preserves_monomorphisms_comp">
<path fill="none" stroke="black" d="M6269.71,-525.21C6270.71,-505.14 6272.61,-468.28 6273.51,-450.34"/>
<polygon fill="black" stroke="black" points="6277.02,-450.31 6274.01,-440.15 6270.03,-449.97 6277.02,-450.31"/>
</a>
</g>
</g>
<!-- category_theory.adjunction.right_adjoint_of_comp&#45;&gt;category_theory.is_right_adjoint -->
<g id="edge488" class="edge">
<title>category_theory.adjunction.right_adjoint_of_comp&#45;&gt;category_theory.is_right_adjoint</title>
<g id="a_edge488"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.adjunction.right_adjoint_of_comp" xlink:title="category_theory.adjunction.right_adjoint_of_comp">
<path fill="none" stroke="black" d="M5492.31,-843.99C5504.41,-844.79 5508.11,-890.36 5503.71,-919.38"/>
<polygon fill="black" stroke="black" points="5500.28,-918.71 5501.71,-929.21 5507.14,-920.11 5500.28,-918.71"/>
</a>
</g>
</g>
<!-- category_theory.functor.final.comp_has_colimit -->
<g id="node270" class="node">
<title>category_theory.functor.final.comp_has_colimit</title>
<g id="a_node270"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.final.comp_has_colimit" xlink:title="category_theory.functor.final.comp_has_colimit">
<ellipse fill="black" stroke="black" cx="5933.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.functor.final&#45;&gt;category_theory.functor.final.comp_has_colimit -->
<g id="edge489" class="edge">
<title>category_theory.functor.final&#45;&gt;category_theory.functor.final.comp_has_colimit</title>
<g id="a_edge489"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.final.comp_has_colimit" xlink:title="category_theory.functor.final.comp_has_colimit">
<path fill="none" stroke="black" d="M5758.71,-828.42C5804.61,-805.9 5894.51,-761.85 5923.61,-747.57"/>
<polygon fill="black" stroke="black" points="5925.47,-750.56 5932.91,-743.02 5922.39,-744.27 5925.47,-750.56"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimits_of_shape_of_preserves_finite_colimits -->
<g id="node271" class="node">
<title>category_theory.limits.preserves_colimits_of_shape_of_preserves_finite_colimits</title>
<g id="a_node271"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_colimits_of_shape_of_preserves_finite_colimits" xlink:title="category_theory.limits.preserves_colimits_of_shape_of_preserves_finite_colimits">
<ellipse fill="black" stroke="black" cx="7718.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_finite_colimits&#45;&gt;category_theory.limits.preserves_colimits_of_shape_of_preserves_finite_colimits -->
<g id="edge490" class="edge">
<title>category_theory.limits.preserves_finite_colimits&#45;&gt;category_theory.limits.preserves_colimits_of_shape_of_preserves_finite_colimits</title>
<g id="a_edge490"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_colimits_of_shape_of_preserves_finite_colimits" xlink:title="category_theory.limits.preserves_colimits_of_shape_of_preserves_finite_colimits">
<path fill="none" stroke="black" d="M7850.01,-929.42C7816.01,-907.42 7750.31,-864.88 7726.71,-849.61"/>
<polygon fill="black" stroke="black" points="7728.41,-846.54 7718.11,-844.02 7724.59,-852.4 7728.41,-846.54"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_preserves_colimits&#45;&gt;category_theory.limits.preserves_colimits_of_size -->
<g id="edge491" class="edge">
<title>category_theory.limits.comp_preserves_colimits&#45;&gt;category_theory.limits.preserves_colimits_of_size</title>
<g id="a_edge491"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_colimits" xlink:title="category_theory.limits.comp_preserves_colimits">
<path fill="none" stroke="black" d="M8861.41,-944.98C8879.01,-945.13 8876.11,-954.8 8870.01,-958.48 8840.91,-975.92 8430.81,-1010.3 8175.91,-1029.7"/>
<polygon fill="black" stroke="black" points="8175.41,-1026.23 8165.71,-1030.5 8175.96,-1033.21 8175.41,-1026.23"/>
</a>
</g>
</g>
<!-- category_theory.limits.category_theory.functor.map.has_cokernel&#45;&gt;category_theory.limits.has_cokernel -->
<g id="edge537" class="edge">
<title>category_theory.limits.category_theory.functor.map.has_cokernel&#45;&gt;category_theory.limits.has_cokernel</title>
<g id="a_edge537"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.functor.map.has_cokernel" xlink:title="category_theory.limits.category_theory.functor.map.has_cokernel">
<path fill="none" stroke="black" d="M5695.01,-50.49C5689.41,-51.29 4897.11,-102.54 4548.01,-124.82"/>
<polygon fill="black" stroke="black" points="4547.57,-121.34 4537.81,-125.47 4548.02,-128.33 4547.57,-121.34"/>
</a>
</g>
</g>
<!-- category_theory.functor.comp.reflects_isomorphisms -->
<g id="node298" class="node">
<title>category_theory.functor.comp.reflects_isomorphisms</title>
<g id="a_node298"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.comp.reflects_isomorphisms" xlink:title="category_theory.functor.comp.reflects_isomorphisms">
<ellipse fill="black" stroke="black" cx="7436.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.reflects_isomorphisms&#45;&gt;category_theory.functor.comp.reflects_isomorphisms -->
<g id="edge538" class="edge">
<title>category_theory.reflects_isomorphisms&#45;&gt;category_theory.functor.comp.reflects_isomorphisms</title>
<g id="a_edge538"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.comp.reflects_isomorphisms" xlink:title="category_theory.functor.comp.reflects_isomorphisms">
<path fill="none" stroke="black" d="M7426.31,-828.21C7420.61,-806.92 7421.31,-766.72 7428.51,-750.28"/>
<polygon fill="black" stroke="black" points="7431.18,-752.56 7435.71,-742.99 7426.2,-747.65 7431.18,-752.56"/>
</a>
</g>
</g>
<!-- category_theory.reflects_isomorphisms&#45;&gt;category_theory.functor.comp.reflects_isomorphisms -->
<g id="edge539" class="edge">
<title>category_theory.reflects_isomorphisms&#45;&gt;category_theory.functor.comp.reflects_isomorphisms</title>
<g id="a_edge539"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.comp.reflects_isomorphisms" xlink:title="category_theory.functor.comp.reflects_isomorphisms">
<path fill="none" stroke="black" d="M7436.01,-828.21C7436.01,-808.14 7436.01,-771.28 7436.01,-753.34"/>
<polygon fill="black" stroke="black" points="7439.51,-753.15 7436.01,-743.15 7432.51,-753.15 7439.51,-753.15"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_reflects_colimits_of_shape&#45;&gt;category_theory.limits.reflects_colimits_of_shape -->
<g id="edge759" class="edge">
<title>category_theory.limits.comp_reflects_colimits_of_shape&#45;&gt;category_theory.limits.reflects_colimits_of_shape</title>
<g id="a_edge759"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_colimits_of_shape" xlink:title="category_theory.limits.comp_reflects_colimits_of_shape">
<path fill="none" stroke="black" d="M7647.41,-944.98C7664.91,-945.1 7657.31,-952.63 7651.01,-958.48 7626.41,-981.38 7597.71,-1007.1 7574.61,-1024.3"/>
<polygon fill="black" stroke="black" points="7572.44,-1021.55 7566.31,-1030.2 7576.49,-1027.26 7572.44,-1021.55"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_reflects_colimit -->
<g id="node403" class="node">
<title>category_theory.limits.comp_reflects_colimit</title>
<g id="a_node403"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_colimit" xlink:title="category_theory.limits.comp_reflects_colimit">
<ellipse fill="black" stroke="black" cx="8675.01" cy="-842.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_colimit&#45;&gt;category_theory.limits.comp_reflects_colimit -->
<g id="edge760" class="edge">
<title>category_theory.limits.reflects_colimit&#45;&gt;category_theory.limits.comp_reflects_colimit</title>
<g id="a_edge760"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_colimit" xlink:title="category_theory.limits.comp_reflects_colimit">
<path fill="none" stroke="black" d="M8665.31,-929.21C8659.61,-907.92 8660.31,-867.72 8667.51,-851.28"/>
<polygon fill="black" stroke="black" points="8670.18,-853.56 8674.71,-843.99 8665.2,-848.65 8670.18,-853.56"/>
</a>
</g>
</g>
<!-- category_theory.limits.reflects_colimit&#45;&gt;category_theory.limits.comp_reflects_colimit -->
<g id="edge761" class="edge">
<title>category_theory.limits.reflects_colimit&#45;&gt;category_theory.limits.comp_reflects_colimit</title>
<g id="a_edge761"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_colimit" xlink:title="category_theory.limits.comp_reflects_colimit">
<path fill="none" stroke="black" d="M8675.01,-929.21C8675.01,-909.14 8675.01,-872.28 8675.01,-854.34"/>
<polygon fill="black" stroke="black" points="8678.51,-854.15 8675.01,-844.15 8671.51,-854.15 8678.51,-854.15"/>
</a>
</g>
</g>
<!-- category_theory.functor.reflects_epimorphisms_comp&#45;&gt;category_theory.functor.reflects_epimorphisms -->
<g id="edge763" class="edge">
<title>category_theory.functor.reflects_epimorphisms_comp&#45;&gt;category_theory.functor.reflects_epimorphisms</title>
<g id="a_edge763"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.reflects_epimorphisms_comp" xlink:title="category_theory.functor.reflects_epimorphisms_comp">
<path fill="none" stroke="black" d="M7652.41,-843.98C7669.91,-844.12 7663.41,-853.12 7656.01,-857.48 7596.61,-892.53 7521.41,-914.52 7461.41,-927.41"/>
<polygon fill="black" stroke="black" points="7460.67,-923.99 7451.61,-929.48 7462.12,-930.84 7460.67,-923.99"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_limit -->
<g id="node623" class="node">
<title>category_theory.limits.has_limit</title>
<g id="a_node623"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_limit" xlink:title="category_theory.limits.has_limit">
<polygon fill="none" stroke="black" points="8483.51,-1060 8200.51,-1060 8200.51,-1029 8483.51,-1029 8483.51,-1060"/>
<text text-anchor="middle" x="8342.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_limit</text>
</a>
</g>
</g>
<!-- category_theory.functor.initial.comp_has_limit&#45;&gt;category_theory.limits.has_limit -->
<g id="edge1236" class="edge">
<title>category_theory.functor.initial.comp_has_limit&#45;&gt;category_theory.limits.has_limit</title>
<g id="a_edge1236"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.initial.comp_has_limit" xlink:title="category_theory.functor.initial.comp_has_limit">
<path fill="none" stroke="black" d="M8879.41,-944.99C8887.91,-945.28 8885.01,-954.64 8879.01,-958.48 8816.91,-998.5 8627.91,-1021.8 8491.71,-1033.7"/>
<polygon fill="black" stroke="black" points="8491.26,-1030.23 8481.61,-1034.6 8491.89,-1037.2 8491.26,-1030.23"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_epimorphisms_comp&#45;&gt;category_theory.functor.preserves_epimorphisms -->
<g id="edge1237" class="edge">
<title>category_theory.functor.preserves_epimorphisms_comp&#45;&gt;category_theory.functor.preserves_epimorphisms</title>
<g id="a_edge1237"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_epimorphisms_comp" xlink:title="category_theory.functor.preserves_epimorphisms_comp">
<path fill="none" stroke="black" d="M6761.31,-439.99C6773.41,-440.79 6777.11,-486.36 6772.71,-515.38"/>
<polygon fill="black" stroke="black" points="6769.28,-514.71 6770.71,-525.21 6776.14,-516.11 6769.28,-514.71"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_monomorphisms_comp&#45;&gt;category_theory.functor.preserves_monomorphisms -->
<g id="edge1211" class="edge">
<title>category_theory.functor.preserves_monomorphisms_comp&#45;&gt;category_theory.functor.preserves_monomorphisms</title>
<g id="a_edge1211"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_monomorphisms_comp" xlink:title="category_theory.functor.preserves_monomorphisms_comp">
<path fill="none" stroke="black" d="M6274.31,-439.99C6286.31,-440.79 6287.81,-486.36 6281.91,-515.38"/>
<polygon fill="black" stroke="black" points="6278.49,-514.66 6279.41,-525.21 6285.27,-516.38 6278.49,-514.66"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_colimit -->
<g id="node449" class="node">
<title>category_theory.limits.has_colimit</title>
<g id="a_node449"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_colimit" xlink:title="category_theory.limits.has_colimit">
<polygon fill="none" stroke="black" points="6502.01,-1060 6202.01,-1060 6202.01,-1029 6502.01,-1029 6502.01,-1060"/>
<text text-anchor="middle" x="6352.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_colimit</text>
</a>
</g>
</g>
<!-- category_theory.functor.final.comp_has_colimit&#45;&gt;category_theory.limits.has_colimit -->
<g id="edge847" class="edge">
<title>category_theory.functor.final.comp_has_colimit&#45;&gt;category_theory.limits.has_colimit</title>
<g id="a_edge847"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.final.comp_has_colimit" xlink:title="category_theory.functor.final.comp_has_colimit">
<path fill="none" stroke="black" d="M5933.41,-743.08C5940.91,-747.47 5905.71,-888.42 5970.01,-958.48 6002.81,-994.18 6115.81,-1016.3 6210.61,-1029.1"/>
<polygon fill="black" stroke="black" points="6210.12,-1032.57 6220.51,-1030.5 6211.1,-1025.63 6210.12,-1032.57"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimits_of_shape -->
<g id="node438" class="node">
<title>category_theory.limits.preserves_colimits_of_shape</title>
<g id="a_node438"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_colimits_of_shape" xlink:title="category_theory.limits.preserves_colimits_of_shape">
<polygon fill="none" stroke="black" points="7916.01,-655.98 7482.01,-655.98 7482.01,-624.98 7916.01,-624.98 7916.01,-655.98"/>
<text text-anchor="middle" x="7699.01" y="-636.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.preserves_colimits_of_shape</text>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimits_of_shape_of_preserves_finite_colimits&#45;&gt;category_theory.limits.preserves_colimits_of_shape -->
<g id="edge1224" class="edge">
<title>category_theory.limits.preserves_colimits_of_shape_of_preserves_finite_colimits&#45;&gt;category_theory.limits.preserves_colimits_of_shape</title>
<g id="a_edge1224"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_colimits_of_shape_of_preserves_finite_colimits" xlink:title="category_theory.limits.preserves_colimits_of_shape_of_preserves_finite_colimits">
<path fill="none" stroke="black" d="M7718.01,-841.84C7717.51,-837.1 7706.21,-717.48 7701.21,-665.61"/>
<polygon fill="black" stroke="black" points="7704.7,-665.28 7700.31,-655.63 7697.73,-665.9 7704.7,-665.28"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limits_of_shape -->
<g id="node433" class="node">
<title>category_theory.limits.preserves_limits_of_shape</title>
<g id="a_node433"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_limits_of_shape" xlink:title="category_theory.limits.preserves_limits_of_shape">
<polygon fill="none" stroke="black" points="8344.51,-655.98 7927.51,-655.98 7927.51,-624.98 8344.51,-624.98 8344.51,-655.98"/>
<text text-anchor="middle" x="8136.01" y="-636.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.preserves_limits_of_shape</text>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limits_of_shape_of_preserves_finite_limits&#45;&gt;category_theory.limits.preserves_limits_of_shape -->
<g id="edge1655" class="edge">
<title>category_theory.limits.preserves_limits_of_shape_of_preserves_finite_limits&#45;&gt;category_theory.limits.preserves_limits_of_shape</title>
<g id="a_edge1655"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_limits_of_shape_of_preserves_finite_limits" xlink:title="category_theory.limits.preserves_limits_of_shape_of_preserves_finite_limits">
<path fill="none" stroke="black" d="M9615.91,-841.92C9613.61,-839.33 9537.71,-756.42 9457.01,-727.48 9259.71,-656.72 8673.01,-643.39 8351.91,-641.57"/>
<polygon fill="black" stroke="black" points="8351.53,-638.07 8341.51,-641.52 8351.5,-645.07 8351.53,-638.07"/>
</a>
</g>
</g>
<!-- is_precomplete -->
<g id="node273" class="node">
<title>is_precomplete</title>
<g id="a_node273"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_precomplete" xlink:title="is_precomplete">
<polygon fill="none" stroke="black" points="13118.01,-2171 12986.01,-2171 12986.01,-2140 13118.01,-2140 13118.01,-2171"/>
<text text-anchor="middle" x="13052.01" y="-2151.8" font-family="Courier,monospace" font-size="14.00">is_precomplete</text>
</a>
</g>
</g>
<!-- comm_semiring&#45;&gt;comm_monoid_with_zero -->
<g id="edge494" class="edge">
<title>comm_semiring&#45;&gt;comm_monoid_with_zero</title>
<g id="a_edge494"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_semiring.to_comm_monoid_with_zero" xlink:title="comm_semiring.to_comm_monoid_with_zero">
<path fill="none" stroke="black" d="M8644.21,-2848.4C8686.11,-2830.8 8759.41,-2799.9 8805.41,-2780.5"/>
<polygon fill="black" stroke="black" points="8806.92,-2783.67 8814.81,-2776.6 8804.24,-2777.2 8806.92,-2783.67"/>
</a>
</g>
</g>
<!-- comm_semiring&#45;&gt;comm_monoid -->
<g id="edge495" class="edge">
<title>comm_semiring&#45;&gt;comm_monoid</title>
<g id="a_edge495"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_semiring.to_comm_monoid" xlink:title="comm_semiring.to_comm_monoid">
<path fill="none" stroke="black" d="M8637.61,-2848.4C8672.91,-2827.8 8729.51,-2786.8 8705.01,-2747.5 8680.71,-2708.5 8632.91,-2686.8 8593.51,-2675"/>
<polygon fill="black" stroke="black" points="8594.29,-2671.58 8583.71,-2672.2 8592.37,-2678.31 8594.29,-2671.58"/>
</a>
</g>
</g>
<!-- non_unital_comm_semiring -->
<g id="node275" class="node">
<title>non_unital_comm_semiring</title>
<g id="a_node275"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_comm_semiring" xlink:title="non_unital_comm_semiring">
<polygon fill="none" stroke="black" points="7746.01,-2778 7530.01,-2778 7530.01,-2747 7746.01,-2747 7746.01,-2778"/>
<text text-anchor="middle" x="7638.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">non_unital_comm_semiring</text>
</a>
</g>
</g>
<!-- comm_semiring&#45;&gt;non_unital_comm_semiring -->
<g id="edge496" class="edge">
<title>comm_semiring&#45;&gt;non_unital_comm_semiring</title>
<g id="a_edge496"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_semiring.to_non_unital_comm_semiring" xlink:title="comm_semiring.to_non_unital_comm_semiring">
<path fill="none" stroke="black" d="M8550.71,-2855.8C8391.51,-2839.6 7962.81,-2796 7754.61,-2774.9"/>
<polygon fill="black" stroke="black" points="7754.94,-2771.41 7744.61,-2773.8 7754.17,-2778.37 7754.94,-2771.41"/>
</a>
</g>
</g>
<!-- semiring -->
<g id="node276" class="node">
<title>semiring</title>
<g id="a_node276"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semiring" xlink:title="semiring">
<polygon fill="none" stroke="black" points="8696.51,-2778 8615.51,-2778 8615.51,-2747 8696.51,-2747 8696.51,-2778"/>
<text text-anchor="middle" x="8656.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">semiring</text>
</a>
</g>
</g>
<!-- comm_semiring&#45;&gt;semiring -->
<g id="edge497" class="edge">
<title>comm_semiring&#45;&gt;semiring</title>
<g id="a_edge497"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_semiring.to_semiring" xlink:title="comm_semiring.to_semiring">
<path fill="none" stroke="black" d="M8618.11,-2848.2C8625.31,-2832.1 8637.21,-2805.2 8645.81,-2785.9"/>
<polygon fill="black" stroke="black" points="8649.08,-2787.16 8649.91,-2776.6 8642.68,-2784.34 8649.08,-2787.16"/>
</a>
</g>
</g>
<!-- non_unital_comm_semiring&#45;&gt;comm_semigroup -->
<g id="edge498" class="edge">
<title>non_unital_comm_semiring&#45;&gt;comm_semigroup</title>
<g id="a_edge498"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_comm_semiring.to_comm_semigroup" xlink:title="non_unital_comm_semiring.to_comm_semigroup">
<path fill="none" stroke="black" d="M7532.51,-2747.5C7487.21,-2736 7438.01,-2714.7 7409.01,-2675.5 7389.61,-2649.3 7392.21,-2609.8 7396.51,-2584.7"/>
<polygon fill="black" stroke="black" points="7400,-2585.09 7398.51,-2574.6 7393.14,-2583.73 7400,-2585.09"/>
</a>
</g>
</g>
<!-- non_unital_semiring -->
<g id="node277" class="node">
<title>non_unital_semiring</title>
<g id="a_node277"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_semiring" xlink:title="non_unital_semiring">
<polygon fill="none" stroke="black" points="7624.01,-2677 7450.01,-2677 7450.01,-2646 7624.01,-2646 7624.01,-2677"/>
<text text-anchor="middle" x="7537.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">non_unital_semiring</text>
</a>
</g>
</g>
<!-- non_unital_comm_semiring&#45;&gt;non_unital_semiring -->
<g id="edge499" class="edge">
<title>non_unital_comm_semiring&#45;&gt;non_unital_semiring</title>
<g id="a_edge499"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_comm_semiring.to_non_unital_semiring" xlink:title="non_unital_comm_semiring.to_non_unital_semiring">
<path fill="none" stroke="black" d="M7624.01,-2747.2C7606.91,-2730.5 7578.01,-2702.2 7558.31,-2682.8"/>
<polygon fill="black" stroke="black" points="7560.52,-2680.07 7550.91,-2675.6 7555.64,-2685.08 7560.52,-2680.07"/>
</a>
</g>
</g>
<!-- semiring&#45;&gt;monoid_with_zero -->
<g id="edge500" class="edge">
<title>semiring&#45;&gt;monoid_with_zero</title>
<g id="a_edge500"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semiring.to_monoid_with_zero" xlink:title="semiring.to_monoid_with_zero">
<path fill="none" stroke="black" d="M8696.61,-2753.6C8784.51,-2737.4 8994.21,-2699 9112.01,-2677.4"/>
<polygon fill="black" stroke="black" points="9112.88,-2680.8 9122.11,-2675.6 9111.66,-2673.91 9112.88,-2680.8"/>
</a>
</g>
</g>
<!-- semiring&#45;&gt;non_unital_semiring -->
<g id="edge501" class="edge">
<title>semiring&#45;&gt;non_unital_semiring</title>
<g id="a_edge501"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semiring.to_non_unital_semiring" xlink:title="semiring.to_non_unital_semiring">
<path fill="none" stroke="black" d="M8615.41,-2758.5C8478.61,-2749.7 8021.51,-2719 7632.71,-2675.5"/>
<polygon fill="black" stroke="black" points="7633.04,-2672.01 7622.71,-2674.4 7632.27,-2678.97 7633.04,-2672.01"/>
</a>
</g>
</g>
<!-- non_assoc_semiring -->
<g id="node278" class="node">
<title>non_assoc_semiring</title>
<g id="a_node278"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_assoc_semiring" xlink:title="non_assoc_semiring">
<polygon fill="none" stroke="black" points="8223.51,-2677 8058.51,-2677 8058.51,-2646 8223.51,-2646 8223.51,-2677"/>
<text text-anchor="middle" x="8141.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">non_assoc_semiring</text>
</a>
</g>
</g>
<!-- semiring&#45;&gt;non_assoc_semiring -->
<g id="edge502" class="edge">
<title>semiring&#45;&gt;non_assoc_semiring</title>
<g id="a_edge502"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semiring.to_non_assoc_semiring" xlink:title="semiring.to_non_assoc_semiring">
<path fill="none" stroke="black" d="M8615.21,-2753.1C8530.21,-2736.8 8333.01,-2698.9 8221.51,-2677.5"/>
<polygon fill="black" stroke="black" points="8222.09,-2674.05 8211.61,-2675.6 8220.78,-2680.92 8222.09,-2674.05"/>
</a>
</g>
</g>
<!-- non_unital_semiring&#45;&gt;semigroup_with_zero -->
<g id="edge503" class="edge">
<title>non_unital_semiring&#45;&gt;semigroup_with_zero</title>
<g id="a_edge503"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_semiring.to_semigroup_with_zero" xlink:title="non_unital_semiring.to_semigroup_with_zero">
<path fill="none" stroke="black" d="M7622.71,-2647.6C7625.81,-2647.2 7628.91,-2646.9 7632.01,-2646.5 7989.71,-2605.2 8080.51,-2608.5 8439.01,-2574.5 8451.31,-2573.3 8464.21,-2572.1 8477.01,-2570.8"/>
<polygon fill="black" stroke="black" points="8477.6,-2574.26 8487.21,-2569.8 8476.92,-2567.29 8477.6,-2574.26"/>
</a>
</g>
</g>
<!-- non_unital_non_assoc_semiring -->
<g id="node279" class="node">
<title>non_unital_non_assoc_semiring</title>
<g id="a_node279"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_non_assoc_semiring" xlink:title="non_unital_non_assoc_semiring">
<polygon fill="none" stroke="black" points="8150.01,-2576 7892.01,-2576 7892.01,-2545 8150.01,-2545 8150.01,-2576"/>
<text text-anchor="middle" x="8021.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">non_unital_non_assoc_semiring</text>
</a>
</g>
</g>
<!-- non_unital_semiring&#45;&gt;non_unital_non_assoc_semiring -->
<g id="edge504" class="edge">
<title>non_unital_semiring&#45;&gt;non_unital_non_assoc_semiring</title>
<g id="a_edge504"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_semiring.to_non_unital_non_assoc_semiring" xlink:title="non_unital_semiring.to_non_unital_non_assoc_semiring">
<path fill="none" stroke="black" d="M7603.01,-2646.5C7692.11,-2628.3 7850.51,-2595.9 7944.61,-2576.6"/>
<polygon fill="black" stroke="black" points="7945.58,-2579.98 7954.71,-2574.6 7944.22,-2573.11 7945.58,-2579.98"/>
</a>
</g>
</g>
<!-- non_assoc_semiring&#45;&gt;mul_zero_one_class -->
<g id="edge505" class="edge">
<title>non_assoc_semiring&#45;&gt;mul_zero_one_class</title>
<g id="a_edge505"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_assoc_semiring.to_mul_zero_one_class" xlink:title="non_assoc_semiring.to_mul_zero_one_class">
<path fill="none" stroke="black" d="M8222.91,-2647.5C8225.61,-2647.2 8228.31,-2646.8 8231.01,-2646.5 8525.41,-2610.5 8875.61,-2581 9038.41,-2568.1"/>
<polygon fill="black" stroke="black" points="9038.63,-2571.59 9048.31,-2567.3 9038.06,-2564.62 9038.63,-2571.59"/>
</a>
</g>
</g>
<!-- non_assoc_semiring&#45;&gt;non_unital_non_assoc_semiring -->
<g id="edge506" class="edge">
<title>non_assoc_semiring&#45;&gt;non_unital_non_assoc_semiring</title>
<g id="a_edge506"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_assoc_semiring.to_non_unital_non_assoc_semiring" xlink:title="non_assoc_semiring.to_non_unital_non_assoc_semiring">
<path fill="none" stroke="black" d="M8124.31,-2646.2C8103.81,-2629.3 8068.81,-2600.5 8045.31,-2581.1"/>
<polygon fill="black" stroke="black" points="8047.44,-2578.31 8037.51,-2574.6 8042.96,-2583.69 8047.44,-2578.31"/>
</a>
</g>
</g>
<!-- add_comm_monoid_with_one -->
<g id="node280" class="node">
<title>add_comm_monoid_with_one</title>
<g id="a_node280"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_monoid_with_one" xlink:title="add_comm_monoid_with_one">
<polygon fill="none" stroke="black" points="8934.01,-2475 8718.01,-2475 8718.01,-2444 8934.01,-2444 8934.01,-2475"/>
<text text-anchor="middle" x="8826.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">add_comm_monoid_with_one</text>
</a>
</g>
</g>
<!-- non_assoc_semiring&#45;&gt;add_comm_monoid_with_one -->
<g id="edge507" class="edge">
<title>non_assoc_semiring&#45;&gt;add_comm_monoid_with_one</title>
<g id="a_edge507"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_assoc_semiring.to_add_comm_monoid_with_one" xlink:title="non_assoc_semiring.to_add_comm_monoid_with_one">
<path fill="none" stroke="black" d="M8215.41,-2646.4C8277.41,-2633.3 8366.91,-2610.2 8439.01,-2574.5 8458.41,-2564.9 8458.51,-2554.7 8478.01,-2545.5 8553.91,-2509.7 8646.41,-2487.9 8717.01,-2475.3"/>
<polygon fill="black" stroke="black" points="8717.97,-2478.68 8727.21,-2473.5 8716.76,-2471.79 8717.97,-2478.68"/>
</a>
</g>
</g>
<!-- non_unital_non_assoc_semiring&#45;&gt;mul_zero_class -->
<g id="edge966" class="edge">
<title>non_unital_non_assoc_semiring&#45;&gt;mul_zero_class</title>
<g id="a_edge966"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_non_assoc_semiring.to_mul_zero_class" xlink:title="non_unital_non_assoc_semiring.to_mul_zero_class">
<path fill="none" stroke="black" d="M8148.01,-2550.1C8381.31,-2533.6 8870.51,-2497.7 9060.51,-2473.6"/>
<polygon fill="black" stroke="black" points="9061.24,-2477.04 9070.71,-2472.3 9060.35,-2470.09 9061.24,-2477.04"/>
</a>
</g>
</g>
<!-- non_unital_non_assoc_semiring&#45;&gt;add_comm_monoid -->
<g id="edge965" class="edge">
<title>non_unital_non_assoc_semiring&#45;&gt;add_comm_monoid</title>
<g id="a_edge965"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_non_assoc_semiring.to_add_comm_monoid" xlink:title="non_unital_non_assoc_semiring.to_add_comm_monoid">
<path fill="none" stroke="black" d="M8003.71,-2545.2C7977.41,-2522.4 7932.91,-2476.5 7960.01,-2444.5 8020.61,-2372.9 8277.51,-2387.6 8388.71,-2372.4"/>
<polygon fill="black" stroke="black" points="8389.25,-2375.86 8398.61,-2370.9 8388.2,-2368.94 8389.25,-2375.86"/>
</a>
</g>
</g>
<!-- distrib -->
<g id="node346" class="node">
<title>distrib</title>
<g id="a_node346"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/distrib" xlink:title="distrib">
<polygon fill="none" stroke="black" points="7455.51,-2475 7382.51,-2475 7382.51,-2444 7455.51,-2444 7455.51,-2475"/>
<text text-anchor="middle" x="7419.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">distrib</text>
</a>
</g>
</g>
<!-- non_unital_non_assoc_semiring&#45;&gt;distrib -->
<g id="edge964" class="edge">
<title>non_unital_non_assoc_semiring&#45;&gt;distrib</title>
<g id="a_edge964"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_non_assoc_semiring.to_distrib" xlink:title="non_unital_non_assoc_semiring.to_distrib">
<path fill="none" stroke="black" d="M7938.91,-2545.5C7810.61,-2524.4 7566.71,-2484.3 7465.21,-2467.6"/>
<polygon fill="black" stroke="black" points="7465.64,-2464.12 7455.21,-2466 7464.54,-2471.04 7465.64,-2464.12"/>
</a>
</g>
</g>
<!-- add_comm_monoid_with_one&#45;&gt;add_comm_monoid -->
<g id="edge1524" class="edge">
<title>add_comm_monoid_with_one&#45;&gt;add_comm_monoid</title>
<g id="a_edge1524"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_monoid_with_one.to_add_comm_monoid" xlink:title="add_comm_monoid_with_one.to_add_comm_monoid">
<path fill="none" stroke="black" d="M8777.01,-2444.4C8711.81,-2426.4 8596.81,-2394.6 8527.01,-2375.3"/>
<polygon fill="black" stroke="black" points="8527.58,-2371.83 8517.01,-2372.6 8525.76,-2378.59 8527.58,-2371.83"/>
</a>
</g>
</g>
<!-- add_monoid_with_one -->
<g id="node470" class="node">
<title>add_monoid_with_one</title>
<g id="a_node470"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_monoid_with_one" xlink:title="add_monoid_with_one">
<polygon fill="none" stroke="black" points="9088.01,-2374 8914.01,-2374 8914.01,-2343 9088.01,-2343 9088.01,-2374"/>
<text text-anchor="middle" x="9001.01" y="-2354.8" font-family="Courier,monospace" font-size="14.00">add_monoid_with_one</text>
</a>
</g>
</g>
<!-- add_comm_monoid_with_one&#45;&gt;add_monoid_with_one -->
<g id="edge1525" class="edge">
<title>add_comm_monoid_with_one&#45;&gt;add_monoid_with_one</title>
<g id="a_edge1525"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_monoid_with_one.to_add_monoid_with_one" xlink:title="add_comm_monoid_with_one.to_add_monoid_with_one">
<path fill="none" stroke="black" d="M8850.01,-2444.4C8880.61,-2427.1 8933.91,-2396.9 8968.31,-2377.5"/>
<polygon fill="black" stroke="black" points="8970.02,-2380.56 8977.01,-2372.6 8966.58,-2374.46 8970.02,-2380.56"/>
</a>
</g>
</g>
<!-- comm_group_with_zero&#45;&gt;comm_monoid_with_zero -->
<g id="edge511" class="edge">
<title>comm_group_with_zero&#45;&gt;comm_monoid_with_zero</title>
<g id="a_edge511"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_group_with_zero.to_comm_monoid_with_zero" xlink:title="comm_group_with_zero.to_comm_monoid_with_zero">
<path fill="none" stroke="black" d="M8869.11,-2949.2C8848.61,-2934.3 8818.71,-2908.5 8806.01,-2877.5 8793.01,-2845.6 8813.21,-2807.9 8829.61,-2784.7"/>
<polygon fill="black" stroke="black" points="8832.53,-2786.64 8835.61,-2776.5 8826.88,-2782.5 8832.53,-2786.64"/>
</a>
</g>
</g>
<!-- group_with_zero -->
<g id="node283" class="node">
<title>group_with_zero</title>
<g id="a_node283"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/group_with_zero" xlink:title="group_with_zero">
<polygon fill="none" stroke="black" points="9647.01,-2878 9507.01,-2878 9507.01,-2847 9647.01,-2847 9647.01,-2878"/>
<text text-anchor="middle" x="9577.01" y="-2858.8" font-family="Courier,monospace" font-size="14.00">group_with_zero</text>
</a>
</g>
</g>
<!-- comm_group_with_zero&#45;&gt;group_with_zero -->
<g id="edge512" class="edge">
<title>comm_group_with_zero&#45;&gt;group_with_zero</title>
<g id="a_edge512"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_group_with_zero.to_group_with_zero" xlink:title="comm_group_with_zero.to_group_with_zero">
<path fill="none" stroke="black" d="M8980.21,-2950C9115.41,-2930.5 9368.51,-2894 9497.31,-2875.5"/>
<polygon fill="black" stroke="black" points="9498.13,-2878.92 9507.51,-2874 9497.11,-2871.99 9498.13,-2878.92"/>
</a>
</g>
</g>
<!-- division_comm_monoid -->
<g id="node284" class="node">
<title>division_comm_monoid</title>
<g id="a_node284"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_comm_monoid" xlink:title="division_comm_monoid">
<polygon fill="none" stroke="black" points="9252.01,-2778 9070.01,-2778 9070.01,-2747 9252.01,-2747 9252.01,-2778"/>
<text text-anchor="middle" x="9161.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">division_comm_monoid</text>
</a>
</g>
</g>
<!-- comm_group_with_zero&#45;&gt;division_comm_monoid -->
<g id="edge513" class="edge">
<title>comm_group_with_zero&#45;&gt;division_comm_monoid</title>
<g id="a_edge513"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_group_with_zero.to_division_comm_monoid" xlink:title="comm_group_with_zero.to_division_comm_monoid">
<path fill="none" stroke="black" d="M8875.11,-2949.2C8852.41,-2926.5 8814.31,-2880.6 8839.01,-2848.5 8854.11,-2828.9 8992.41,-2797.4 9082.81,-2778.6"/>
<polygon fill="black" stroke="black" points="9083.75,-2781.98 9092.81,-2776.5 9082.31,-2775.13 9083.75,-2781.98"/>
</a>
</g>
</g>
<!-- cancel_comm_monoid_with_zero -->
<g id="node285" class="node">
<title>cancel_comm_monoid_with_zero</title>
<g id="a_node285"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cancel_comm_monoid_with_zero" xlink:title="cancel_comm_monoid_with_zero">
<polygon fill="none" stroke="black" points="9095.51,-2878 8846.51,-2878 8846.51,-2847 9095.51,-2847 9095.51,-2878"/>
<text text-anchor="middle" x="8971.01" y="-2858.8" font-family="Courier,monospace" font-size="14.00">cancel_comm_monoid_with_zero</text>
</a>
</g>
</g>
<!-- comm_group_with_zero&#45;&gt;cancel_comm_monoid_with_zero -->
<g id="edge514" class="edge">
<title>comm_group_with_zero&#45;&gt;cancel_comm_monoid_with_zero</title>
<g id="a_edge514"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_group_with_zero.cancel_comm_monoid_with_zero" xlink:title="comm_group_with_zero.cancel_comm_monoid_with_zero">
<path fill="none" stroke="black" d="M8901.31,-2949.2C8914.71,-2932.8 8937.51,-2905 8953.31,-2885.6"/>
<polygon fill="black" stroke="black" points="8956.22,-2887.57 8959.81,-2877.6 8950.79,-2883.15 8956.22,-2887.57"/>
</a>
</g>
</g>
<!-- division_semiring&#45;&gt;semiring -->
<g id="edge515" class="edge">
<title>division_semiring&#45;&gt;semiring</title>
<g id="a_edge515"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_semiring.to_semiring" xlink:title="division_semiring.to_semiring">
<path fill="none" stroke="black" d="M8701.81,-2949.2C8698.31,-2927.5 8690.91,-2884.5 8682.01,-2848.5 8676.71,-2827.2 8669.31,-2803.3 8663.81,-2786.2"/>
<polygon fill="black" stroke="black" points="8667.07,-2784.9 8660.61,-2776.5 8660.42,-2787.09 8667.07,-2784.9"/>
</a>
</g>
</g>
<!-- division_semiring&#45;&gt;group_with_zero -->
<g id="edge516" class="edge">
<title>division_semiring&#45;&gt;group_with_zero</title>
<g id="a_edge516"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_semiring.to_group_with_zero" xlink:title="division_semiring.to_group_with_zero">
<path fill="none" stroke="black" d="M8781.81,-2950.7C8784.91,-2950.3 8788.01,-2949.9 8791.01,-2949.5 9087.51,-2910.6 9162.81,-2910.6 9460.01,-2877.5 9472.21,-2876.1 9485.11,-2874.7 9497.71,-2873.2"/>
<polygon fill="black" stroke="black" points="9498.16,-2876.67 9507.71,-2872.1 9497.39,-2869.71 9498.16,-2876.67"/>
</a>
</g>
</g>
<!-- group_with_zero&#45;&gt;monoid_with_zero -->
<g id="edge517" class="edge">
<title>group_with_zero&#45;&gt;monoid_with_zero</title>
<g id="a_edge517"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/group_with_zero.to_monoid_with_zero" xlink:title="group_with_zero.to_monoid_with_zero">
<path fill="none" stroke="black" d="M9569.51,-2848.5C9555.41,-2824.5 9522.91,-2774.6 9482.01,-2747.5 9420.81,-2707 9339.81,-2685.2 9279.61,-2673.7"/>
<polygon fill="black" stroke="black" points="9280.28,-2670.26 9269.81,-2671.9 9279.02,-2677.15 9280.28,-2670.26"/>
</a>
</g>
</g>
<!-- group_with_zero&#45;&gt;nontrivial -->
<g id="edge518" class="edge">
<title>group_with_zero&#45;&gt;nontrivial</title>
<g id="a_edge518"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/group_with_zero.to_nontrivial" xlink:title="group_with_zero.to_nontrivial">
<path fill="none" stroke="black" d="M9646.41,-2854.5C9819.71,-2835.7 10270.01,-2786.9 10431.01,-2769.4"/>
<polygon fill="black" stroke="black" points="10431.46,-2772.87 10441.01,-2768.3 10430.69,-2765.91 10431.46,-2772.87"/>
</a>
</g>
</g>
<!-- division_monoid -->
<g id="node287" class="node">
<title>division_monoid</title>
<g id="a_node287"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_monoid" xlink:title="division_monoid">
<polygon fill="none" stroke="black" points="9503.01,-2677 9363.01,-2677 9363.01,-2646 9503.01,-2646 9503.01,-2677"/>
<text text-anchor="middle" x="9433.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">division_monoid</text>
</a>
</g>
</g>
<!-- group_with_zero&#45;&gt;division_monoid -->
<g id="edge519" class="edge">
<title>group_with_zero&#45;&gt;division_monoid</title>
<g id="a_edge519"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/group_with_zero.to_division_monoid" xlink:title="group_with_zero.to_division_monoid">
<path fill="none" stroke="black" d="M9577.21,-2848.5C9577.01,-2825.7 9573.81,-2779.3 9553.01,-2747.5 9533.41,-2717.5 9499.41,-2694.8 9472.51,-2680.3"/>
<polygon fill="black" stroke="black" points="9473.89,-2677.07 9463.41,-2675.5 9470.63,-2683.26 9473.89,-2677.07"/>
</a>
</g>
</g>
<!-- group_with_zero&#45;&gt;div_inv_monoid -->
<g id="edge520" class="edge">
<title>group_with_zero&#45;&gt;div_inv_monoid</title>
<g id="a_edge520"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/group_with_zero.to_div_inv_monoid" xlink:title="group_with_zero.to_div_inv_monoid">
<path fill="none" stroke="black" d="M9579.31,-2848.5C9584.81,-2811.3 9594.71,-2706.7 9544.01,-2646.5 9515.51,-2612.6 9470.31,-2590.9 9433.21,-2577.9"/>
<polygon fill="black" stroke="black" points="9434.11,-2574.51 9423.51,-2574.6 9431.85,-2581.13 9434.11,-2574.51"/>
</a>
</g>
</g>
<!-- cancel_monoid_with_zero -->
<g id="node289" class="node">
<title>cancel_monoid_with_zero</title>
<g id="a_node289"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cancel_monoid_with_zero" xlink:title="cancel_monoid_with_zero">
<polygon fill="none" stroke="black" points="9474.51,-2778 9267.51,-2778 9267.51,-2747 9474.51,-2747 9474.51,-2778"/>
<text text-anchor="middle" x="9371.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">cancel_monoid_with_zero</text>
</a>
</g>
</g>
<!-- group_with_zero&#45;&gt;cancel_monoid_with_zero -->
<g id="edge521" class="edge">
<title>group_with_zero&#45;&gt;cancel_monoid_with_zero</title>
<g id="a_edge521"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/group_with_zero.cancel_monoid_with_zero" xlink:title="group_with_zero.cancel_monoid_with_zero">
<path fill="none" stroke="black" d="M9548.81,-2848.4C9512.41,-2830.9 9448.91,-2800.4 9408.51,-2781"/>
<polygon fill="black" stroke="black" points="9409.75,-2777.71 9399.21,-2776.6 9406.76,-2784.04 9409.75,-2777.71"/>
</a>
</g>
</g>
<!-- division_comm_monoid&#45;&gt;comm_monoid -->
<g id="edge522" class="edge">
<title>division_comm_monoid&#45;&gt;comm_monoid</title>
<g id="a_edge522"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_comm_monoid.to_comm_monoid" xlink:title="division_comm_monoid.to_comm_monoid">
<path fill="none" stroke="black" d="M9070.61,-2748.6C8959.21,-2733.1 8764.21,-2704.9 8598.01,-2675.5 8596.51,-2675.2 8595.11,-2675 8593.61,-2674.7"/>
<polygon fill="black" stroke="black" points="8594.08,-2671.23 8583.61,-2672.9 8592.84,-2678.12 8594.08,-2671.23"/>
</a>
</g>
</g>
<!-- division_comm_monoid&#45;&gt;division_monoid -->
<g id="edge523" class="edge">
<title>division_comm_monoid&#45;&gt;division_monoid</title>
<g id="a_edge523"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_comm_monoid.to_division_monoid" xlink:title="division_comm_monoid.to_division_monoid">
<path fill="none" stroke="black" d="M9198.31,-2747.4C9247.11,-2729.6 9333.01,-2698.4 9386.21,-2679"/>
<polygon fill="black" stroke="black" points="9387.56,-2682.24 9395.81,-2675.6 9385.22,-2675.64 9387.56,-2682.24"/>
</a>
</g>
</g>
<!-- cancel_comm_monoid_with_zero&#45;&gt;comm_monoid_with_zero -->
<g id="edge524" class="edge">
<title>cancel_comm_monoid_with_zero&#45;&gt;comm_monoid_with_zero</title>
<g id="a_edge524"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cancel_comm_monoid_with_zero.to_comm_monoid_with_zero" xlink:title="cancel_comm_monoid_with_zero.to_comm_monoid_with_zero">
<path fill="none" stroke="black" d="M8954.01,-2848.4C8932.91,-2831.6 8896.61,-2802.6 8872.31,-2783.2"/>
<polygon fill="black" stroke="black" points="8874.2,-2780.23 8864.21,-2776.7 8869.82,-2785.69 8874.2,-2780.23"/>
</a>
</g>
</g>
<!-- cancel_comm_monoid_with_zero&#45;&gt;cancel_monoid_with_zero -->
<g id="edge525" class="edge">
<title>cancel_comm_monoid_with_zero&#45;&gt;cancel_monoid_with_zero</title>
<g id="a_edge525"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cancel_comm_monoid_with_zero.to_cancel_monoid_with_zero" xlink:title="cancel_comm_monoid_with_zero.to_cancel_monoid_with_zero">
<path fill="none" stroke="black" d="M9025.81,-2848.4C9098.91,-2830.3 9228.11,-2798.4 9306.11,-2779.1"/>
<polygon fill="black" stroke="black" points="9307.35,-2782.4 9316.21,-2776.6 9305.67,-2775.61 9307.35,-2782.4"/>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;nhds_within.filter.ne_bot -->
<g id="edge661" class="edge">
<title>nontrivial&#45;&gt;nhds_within.filter.ne_bot</title>
<g id="a_edge661"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within.filter.ne_bot" xlink:title="nhds_within.filter.ne_bot">
<path fill="none" stroke="black" d="M10539.01,-2748.8C10541.01,-2748.3 10544.01,-2747.8 10547.01,-2747.5 10935.01,-2698.2 13687.01,-2772.7 14066.01,-2675.5 14160.01,-2651.4 14186.01,-2638.1 14259.01,-2574.5 14309.01,-2531.1 14354.01,-2506.2 14331.01,-2444.5 14273.01,-2292.1 14145.01,-2322.9 14087.01,-2170.5 14067.01,-2117.2 14143.01,-2121.6 14166.01,-2069.5 14171.01,-2057.7 14175.01,-2050 14166.01,-2040.5 14026.01,-1889.5 13420.01,-2072.6 13243.01,-1968.5 13241.01,-1967.5 13240.01,-1966 13239.01,-1964.4"/>
<polygon fill="black" stroke="black" points="13241.83,-1962.25 13234.01,-1955.1 13235.67,-1965.57 13241.83,-1962.25"/>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;real.punctured_nhds_module_ne_bot -->
<g id="edge674" class="edge">
<title>nontrivial&#45;&gt;real.punctured_nhds_module_ne_bot</title>
<g id="a_edge674"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/real.punctured_nhds_module_ne_bot" xlink:title="real.punctured_nhds_module_ne_bot">
<path fill="none" stroke="black" d="M10539.01,-2748.8C10541.01,-2748.3 10544.01,-2747.9 10547.01,-2747.5 10796.01,-2714.4 12571.01,-2760.9 12807.01,-2675.5 12895.01,-2643.5 12890.01,-2587.5 12974.01,-2545.5 13084.01,-2490.8 13126.01,-2517.1 13240.01,-2473.5 13287.01,-2455.6 13618.01,-2314.2 13644.01,-2271.5 13651.01,-2260.5 13647.01,-2255 13644.01,-2242.5 13627.01,-2169.1 13531.01,-2003.4 13491.01,-1939.5 13470.01,-1905.4 13456.01,-1902.4 13436.01,-1867.5 13433.01,-1862.2 13353.01,-1671.5 13352.01,-1665.5 13349.01,-1652.9 13347.01,-1648.3 13352.01,-1636.5 13378.01,-1576.4 13402.01,-1567.3 13459.01,-1535.5 13568.01,-1474.9 13621.01,-1524.7 13730.01,-1463.5 13733.01,-1462 13735.01,-1459.9 13737.01,-1457.8"/>
<polygon fill="black" stroke="black" points="13739.88,-1459.85 13744.01,-1450.1 13734.7,-1455.15 13739.88,-1459.85"/>
</a>
</g>
</g>
<!-- nonempty -->
<g id="node352" class="node">
<title>nonempty</title>
<g id="a_node352"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nonempty" xlink:title="nonempty">
<polygon fill="none" stroke="black" points="11157.51,-1060 11076.51,-1060 11076.51,-1029 11157.51,-1029 11157.51,-1060"/>
<text text-anchor="middle" x="11117.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">nonempty</text>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;nonempty -->
<g id="edge662" class="edge">
<title>nontrivial&#45;&gt;nonempty</title>
<g id="a_edge662"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nontrivial.to_nonempty" xlink:title="nontrivial.to_nonempty">
<path fill="none" stroke="black" d="M10505.01,-2747.3C10522.01,-2731.4 10549.01,-2703.9 10565.01,-2675.5 10619.01,-2581.6 10578.01,-2531.5 10642.01,-2444.5 10675.01,-2400.2 10698.01,-2404.8 10743.01,-2372.5 10805.01,-2328 10841.01,-2336.2 10881.01,-2271.5 11127.01,-1873 10968.01,-1692.3 11057.01,-1232.5 11066.01,-1187.4 11065.01,-1175.2 11079.01,-1131.5 11086.01,-1109.6 11097.01,-1085.6 11105.01,-1068.7"/>
<polygon fill="black" stroke="black" points="11108.27,-1070.05 11110.01,-1059.6 11102.13,-1066.68 11108.27,-1070.05"/>
</a>
</g>
</g>
<!-- char_zero_of_exp_char_one&#39; -->
<g id="node353" class="node">
<title>char_zero_of_exp_char_one&#39;</title>
<g id="a_node353"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/char_zero_of_exp_char_one'" xlink:title="char_zero_of_exp_char_one&#39;">
<ellipse fill="black" stroke="black" cx="9795.01" cy="-2661.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;char_zero_of_exp_char_one&#39; -->
<g id="edge663" class="edge">
<title>nontrivial&#45;&gt;char_zero_of_exp_char_one&#39;</title>
<g id="a_edge663"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/char_zero_of_exp_char_one'" xlink:title="char_zero_of_exp_char_one&#39;">
<path fill="none" stroke="black" d="M10441.01,-2755.7C10290.01,-2739.3 9837.61,-2689.2 9809.01,-2675.5 9806.31,-2674.2 9803.71,-2672.1 9801.61,-2670"/>
<polygon fill="black" stroke="black" points="9804.17,-2667.6 9795.11,-2662.1 9798.76,-2672.05 9804.17,-2667.6"/>
</a>
</g>
</g>
<!-- strong_rank_condition -->
<g id="node354" class="node">
<title>strong_rank_condition</title>
<g id="a_node354"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/strong_rank_condition" xlink:title="strong_rank_condition">
<polygon fill="none" stroke="black" points="10308.01,-2071 10118.01,-2071 10118.01,-2040 10308.01,-2040 10308.01,-2071"/>
<text text-anchor="middle" x="10213.01" y="-2051.8" font-family="Courier,monospace" font-size="14.00">strong_rank_condition</text>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;strong_rank_condition -->
<g id="edge664" class="edge">
<title>nontrivial&#45;&gt;strong_rank_condition</title>
<g id="a_edge664"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_ring_strong_rank_condition" xlink:title="comm_ring_strong_rank_condition">
<path fill="none" stroke="black" d="M10467.01,-2747.5C10441.01,-2732 10400.01,-2705.1 10370.01,-2675.5 10250.01,-2558.1 10225.01,-2519.8 10145.01,-2372.5 10116.01,-2319.7 10092.01,-2300.7 10107.01,-2242.5 10124.01,-2177.4 10170.01,-2111.2 10195.01,-2078"/>
<polygon fill="black" stroke="black" points="10198.18,-2079.68 10202.01,-2069.8 10192.86,-2075.13 10198.18,-2079.68"/>
</a>
</g>
</g>
<!-- no_min_order -->
<g id="node355" class="node">
<title>no_min_order</title>
<g id="a_node355"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/no_min_order" xlink:title="no_min_order">
<polygon fill="none" stroke="black" points="12444.51,-2272 12329.51,-2272 12329.51,-2241 12444.51,-2241 12444.51,-2272"/>
<text text-anchor="middle" x="12387.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">no_min_order</text>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;no_min_order -->
<g id="edge665" class="edge">
<title>nontrivial&#45;&gt;no_min_order</title>
<g id="a_edge665"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_comm_group.to_no_min_order" xlink:title="linear_ordered_comm_group.to_no_min_order">
<path fill="none" stroke="black" d="M10538.01,-2747.5C10538.01,-2747.5 10538.01,-2747.5 10538.01,-2747.5 10975.01,-2688.5 12103.01,-2819.2 12519.01,-2675.5 12591.01,-2650.6 12623.01,-2642.5 12658.01,-2574.5 12687.01,-2516.7 12605.01,-2457 12584.01,-2444.5 12392.01,-2329.3 12232.01,-2541.6 12086.01,-2372.5 12078.01,-2362.8 12078.01,-2353.8 12086.01,-2343.5 12100.01,-2324.7 12236.01,-2290.7 12320.01,-2271.8"/>
<polygon fill="black" stroke="black" points="12321,-2275.17 12330.01,-2269.6 12319.5,-2268.33 12321,-2275.17"/>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;no_min_order -->
<g id="edge666" class="edge">
<title>nontrivial&#45;&gt;no_min_order</title>
<g id="a_edge666"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_add_comm_group.to_no_min_order" xlink:title="linear_ordered_add_comm_group.to_no_min_order">
<path fill="none" stroke="black" d="M10539.01,-2750.6C10544.01,-2749.3 10550.01,-2748.3 10556.01,-2747.5 10993.01,-2688.5 12121.01,-2819.2 12537.01,-2675.5 12609.01,-2650.6 12641.01,-2642.5 12676.01,-2574.5 12705.01,-2516.7 12623.01,-2457 12602.01,-2444.5 12410.01,-2329.3 12250.01,-2541.6 12104.01,-2372.5 12096.01,-2362.8 12096.01,-2353.8 12104.01,-2343.5 12118.01,-2325.4 12244.01,-2293.3 12323.01,-2274"/>
<polygon fill="black" stroke="black" points="12324.11,-2277.34 12333.01,-2271.6 12322.47,-2270.53 12324.11,-2277.34"/>
</a>
</g>
</g>
<!-- ne_zero.invertible -->
<g id="node356" class="node">
<title>ne_zero.invertible</title>
<g id="a_node356"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ne_zero.invertible" xlink:title="ne_zero.invertible">
<ellipse fill="black" stroke="black" cx="9992.01" cy="-2256.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;ne_zero.invertible -->
<g id="edge667" class="edge">
<title>nontrivial&#45;&gt;ne_zero.invertible</title>
<g id="a_edge667"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ne_zero.invertible" xlink:title="ne_zero.invertible">
<path fill="none" stroke="black" d="M10456.01,-2747.4C10420.01,-2732.5 10364.01,-2706.6 10321.01,-2675.5 10218.01,-2601 10196.01,-2574.2 10118.01,-2473.5 10061.01,-2399.9 10011.01,-2298.3 9996.41,-2267.3"/>
<polygon fill="black" stroke="black" points="9999.49,-2265.61 9992.01,-2258.1 9993.17,-2268.63 9999.49,-2265.61"/>
</a>
</g>
</g>
<!-- valuation.supp.ideal.is_prime -->
<g id="node357" class="node">
<title>valuation.supp.ideal.is_prime</title>
<g id="a_node357"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/valuation.supp.ideal.is_prime" xlink:title="valuation.supp.ideal.is_prime">
<ellipse fill="black" stroke="black" cx="9767.01" cy="-2256.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;valuation.supp.ideal.is_prime -->
<g id="edge668" class="edge">
<title>nontrivial&#45;&gt;valuation.supp.ideal.is_prime</title>
<g id="a_edge668"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/valuation.supp.ideal.is_prime" xlink:title="valuation.supp.ideal.is_prime">
<path fill="none" stroke="black" d="M10441.01,-2755.9C10279.01,-2738.9 9765.91,-2684.4 9751.01,-2675.5 9690.41,-2639.4 9711.71,-2593.5 9660.01,-2545.5 9614.11,-2502.9 9576.31,-2523.8 9539.01,-2473.5 9503.91,-2426.2 9478.81,-2390.6 9514.01,-2343.5 9581.71,-2252.9 9667.01,-2338.6 9758.01,-2271.5 9759.61,-2270.3 9761.01,-2268.7 9762.21,-2267.1"/>
<polygon fill="black" stroke="black" points="9765.4,-2268.57 9767.01,-2258.1 9759.22,-2265.28 9765.4,-2268.57"/>
</a>
</g>
</g>
<!-- has_faithful_smul -->
<g id="node358" class="node">
<title>has_faithful_smul</title>
<g id="a_node358"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_faithful_smul" xlink:title="has_faithful_smul">
<polygon fill="none" stroke="black" points="10557.51,-2677 10400.51,-2677 10400.51,-2646 10557.51,-2646 10557.51,-2677"/>
<text text-anchor="middle" x="10479.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">has_faithful_smul</text>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;has_faithful_smul -->
<g id="edge669" class="edge">
<title>nontrivial&#45;&gt;has_faithful_smul</title>
<g id="a_edge669"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cancel_monoid_with_zero.to_has_faithful_smul" xlink:title="cancel_monoid_with_zero.to_has_faithful_smul">
<path fill="none" stroke="black" d="M10488.01,-2747.2C10487.01,-2731.3 10484.01,-2705 10482.01,-2685.7"/>
<polygon fill="black" stroke="black" points="10485.48,-2685.21 10481.01,-2675.6 10478.52,-2685.9 10485.48,-2685.21"/>
</a>
</g>
</g>
<!-- no_max_order -->
<g id="node359" class="node">
<title>no_max_order</title>
<g id="a_node359"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/no_max_order" xlink:title="no_max_order">
<polygon fill="none" stroke="black" points="12312.51,-2272 12197.51,-2272 12197.51,-2241 12312.51,-2241 12312.51,-2272"/>
<text text-anchor="middle" x="12255.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">no_max_order</text>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;no_max_order -->
<g id="edge670" class="edge">
<title>nontrivial&#45;&gt;no_max_order</title>
<g id="a_edge670"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_add_comm_group.to_no_max_order" xlink:title="linear_ordered_add_comm_group.to_no_max_order">
<path fill="none" stroke="black" d="M10538.01,-2747.5C10538.01,-2747.5 10538.01,-2747.5 10538.01,-2747.5 10957.01,-2690.5 12033.01,-2786.1 12441.01,-2675.5 12533.01,-2650.6 12581.01,-2656.2 12630.01,-2574.5 12669.01,-2509.8 12585.01,-2470.5 12535.01,-2444.5 12336.01,-2340.9 12182.01,-2542.2 12035.01,-2372.5 12027.01,-2362.8 12028.01,-2354.2 12035.01,-2343.5 12053.01,-2317.4 12130.01,-2290.7 12188.01,-2274.2"/>
<polygon fill="black" stroke="black" points="12189.27,-2277.49 12198.01,-2271.5 12187.45,-2270.73 12189.27,-2277.49"/>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;no_max_order -->
<g id="edge671" class="edge">
<title>nontrivial&#45;&gt;no_max_order</title>
<g id="a_edge671"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_comm_group.to_no_max_order" xlink:title="linear_ordered_comm_group.to_no_max_order">
<path fill="none" stroke="black" d="M10539.01,-2750.6C10544.01,-2749.3 10550.01,-2748.3 10556.01,-2747.5 10975.01,-2690.5 12051.01,-2786.1 12459.01,-2675.5 12551.01,-2650.6 12599.01,-2656.2 12648.01,-2574.5 12687.01,-2509.8 12603.01,-2470.5 12553.01,-2444.5 12354.01,-2340.9 12200.01,-2542.2 12053.01,-2372.5 12045.01,-2362.8 12046.01,-2354.2 12053.01,-2343.5 12070.01,-2317.6 12147.01,-2291.1 12201.01,-2274.6"/>
<polygon fill="black" stroke="black" points="12201.63,-2278.08 12210.01,-2271.6 12199.42,-2271.44 12201.63,-2278.08"/>
</a>
</g>
</g>
<!-- invariant_basis_number -->
<g id="node360" class="node">
<title>invariant_basis_number</title>
<g id="a_node360"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/invariant_basis_number" xlink:title="invariant_basis_number">
<polygon fill="none" stroke="black" points="10036.51,-1868 9837.51,-1868 9837.51,-1837 10036.51,-1837 10036.51,-1868"/>
<text text-anchor="middle" x="9937.01" y="-1848.8" font-family="Courier,monospace" font-size="14.00">invariant_basis_number</text>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;invariant_basis_number -->
<g id="edge672" class="edge">
<title>nontrivial&#45;&gt;invariant_basis_number</title>
<g id="a_edge672"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/invariant_basis_number_of_nontrivial_of_comm_ring" xlink:title="invariant_basis_number_of_nontrivial_of_comm_ring">
<path fill="none" stroke="black" d="M10441.01,-2755.4C10292.01,-2738.3 9851.91,-2686.8 9842.01,-2675.5 9831.81,-2663.9 9838.31,-2652.1 9855.01,-2545.5 9875.11,-2417.2 9907.01,-2387.9 9907.01,-2258 9907.01,-2258 9907.01,-2258 9907.01,-2054 9907.01,-1989.8 9922.31,-1915.2 9931.11,-1877.9"/>
<polygon fill="black" stroke="black" points="9934.56,-1878.53 9933.41,-1868 9927.74,-1876.95 9934.56,-1878.53"/>
</a>
</g>
</g>
<!-- real_normed_space.noncompact_space -->
<g id="node361" class="node">
<title>real_normed_space.noncompact_space</title>
<g id="a_node361"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/real_normed_space.noncompact_space" xlink:title="real_normed_space.noncompact_space">
<ellipse fill="black" stroke="black" cx="14346.01" cy="-1246.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;real_normed_space.noncompact_space -->
<g id="edge673" class="edge">
<title>nontrivial&#45;&gt;real_normed_space.noncompact_space</title>
<g id="a_edge673"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/real_normed_space.noncompact_space" xlink:title="real_normed_space.noncompact_space">
<path fill="none" stroke="black" d="M10539.01,-2748.8C10541.01,-2748.3 10544.01,-2747.9 10547.01,-2747.5 10997.01,-2686.9 12143.01,-2766 12588.01,-2675.5 12746.01,-2643.3 12774.01,-2598 12927.01,-2545.5 13031.01,-2509.8 13076.01,-2540 13163.01,-2473.5 13217.01,-2432 13192.01,-2386.5 13245.01,-2343.5 13316.01,-2285.5 13363.01,-2323.4 13439.01,-2271.5 13489.01,-2237.6 13500.01,-2223 13529.01,-2170.5 13558.01,-2117.8 13535.01,-2090.8 13568.01,-2040.5 13684.01,-1864.9 13770.01,-1871.5 13932.01,-1737.5 13971.01,-1705.3 13987.01,-1703.6 14020.01,-1665.5 14134.01,-1535.1 14102.01,-1456.9 14223.01,-1333.5 14265.01,-1291 14292.01,-1302.1 14336.01,-1261.5 14338.01,-1260 14339.01,-1258.2 14340.01,-1256.5"/>
<polygon fill="black" stroke="black" points="14343.05,-1258.27 14346.01,-1248.1 14337.35,-1254.2 14343.05,-1258.27"/>
</a>
</g>
</g>
<!-- noetherian_ring_strong_rank_condition -->
<g id="node362" class="node">
<title>noetherian_ring_strong_rank_condition</title>
<g id="a_node362"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/noetherian_ring_strong_rank_condition" xlink:title="noetherian_ring_strong_rank_condition">
<ellipse fill="black" stroke="black" cx="10319.01" cy="-2155.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;noetherian_ring_strong_rank_condition -->
<g id="edge675" class="edge">
<title>nontrivial&#45;&gt;noetherian_ring_strong_rank_condition</title>
<g id="a_edge675"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/noetherian_ring_strong_rank_condition" xlink:title="noetherian_ring_strong_rank_condition">
<path fill="none" stroke="black" d="M10470.01,-2747.2C10448.01,-2731.8 10414.01,-2705 10392.01,-2675.5 10353.01,-2624.5 10364.01,-2599.9 10330.01,-2545.5 10248.01,-2414 10166.01,-2417.8 10115.01,-2271.5 10111.01,-2259.3 10108.01,-2253.1 10115.01,-2242.5 10166.01,-2168.2 10229.01,-2218.8 10305.01,-2170.5 10308.01,-2168.9 10310.01,-2166.7 10312.01,-2164.6"/>
<polygon fill="black" stroke="black" points="10314.75,-2166.8 10319.01,-2157.1 10309.63,-2162.02 10314.75,-2166.8"/>
</a>
</g>
</g>
<!-- cstar_ring.norm_one_class -->
<g id="node363" class="node">
<title>cstar_ring.norm_one_class</title>
<g id="a_node363"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cstar_ring.norm_one_class" xlink:title="cstar_ring.norm_one_class">
<ellipse fill="black" stroke="black" cx="12798.01" cy="-2661.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;cstar_ring.norm_one_class -->
<g id="edge676" class="edge">
<title>nontrivial&#45;&gt;cstar_ring.norm_one_class</title>
<g id="a_edge676"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cstar_ring.norm_one_class" xlink:title="cstar_ring.norm_one_class">
<path fill="none" stroke="black" d="M10539.01,-2748.8C10541.01,-2748.3 10544.01,-2747.9 10547.01,-2747.5 10794.01,-2714.7 12555.01,-2772.3 12784.01,-2675.5 12787.01,-2674.3 12789.01,-2672.3 12792.01,-2670.2"/>
<polygon fill="black" stroke="black" points="12794.87,-2672.22 12798.01,-2662.1 12789.25,-2668.05 12794.87,-2672.22"/>
</a>
</g>
</g>
<!-- no_zero_smul_divisors.algebra.no_zero_smul_divisors -->
<g id="node364" class="node">
<title>no_zero_smul_divisors.algebra.no_zero_smul_divisors</title>
<g id="a_node364"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/no_zero_smul_divisors.algebra.no_zero_smul_divisors" xlink:title="no_zero_smul_divisors.algebra.no_zero_smul_divisors">
<ellipse fill="black" stroke="black" cx="9785.01" cy="-2256.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- nontrivial&#45;&gt;no_zero_smul_divisors.algebra.no_zero_smul_divisors -->
<g id="edge677" class="edge">
<title>nontrivial&#45;&gt;no_zero_smul_divisors.algebra.no_zero_smul_divisors</title>
<g id="a_edge677"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/no_zero_smul_divisors.algebra.no_zero_smul_divisors" xlink:title="no_zero_smul_divisors.algebra.no_zero_smul_divisors">
<path fill="none" stroke="black" d="M10441.01,-2755.6C10284.01,-2738.3 9800.11,-2684.1 9786.01,-2675.5 9726.51,-2639.1 9749.61,-2592.4 9698.01,-2545.5 9648.51,-2500.6 9609.01,-2524.7 9566.01,-2473.5 9527.61,-2427.7 9496.21,-2391.3 9532.01,-2343.5 9599.71,-2252.9 9685.01,-2338.6 9776.01,-2271.5 9777.61,-2270.3 9779.01,-2268.7 9780.21,-2267.1"/>
<polygon fill="black" stroke="black" points="9783.4,-2268.57 9785.01,-2258.1 9777.22,-2265.28 9783.4,-2268.57"/>
</a>
</g>
</g>
<!-- division_monoid&#45;&gt;div_inv_monoid -->
<g id="edge793" class="edge">
<title>division_monoid&#45;&gt;div_inv_monoid</title>
<g id="a_edge793"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_monoid.to_div_inv_monoid" xlink:title="division_monoid.to_div_inv_monoid">
<path fill="none" stroke="black" d="M9424.41,-2646.2C9414.21,-2629.9 9397.01,-2602.5 9384.91,-2583.1"/>
<polygon fill="black" stroke="black" points="9387.83,-2581.16 9379.51,-2574.6 9381.92,-2584.92 9387.83,-2581.16"/>
</a>
</g>
</g>
<!-- has_involutive_inv -->
<g id="node419" class="node">
<title>has_involutive_inv</title>
<g id="a_node419"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_involutive_inv" xlink:title="has_involutive_inv">
<polygon fill="none" stroke="black" points="9618.51,-2576 9453.51,-2576 9453.51,-2545 9618.51,-2545 9618.51,-2576"/>
<text text-anchor="middle" x="9536.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">has_involutive_inv</text>
</a>
</g>
</g>
<!-- division_monoid&#45;&gt;has_involutive_inv -->
<g id="edge794" class="edge">
<title>division_monoid&#45;&gt;has_involutive_inv</title>
<g id="a_edge794"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/division_monoid.to_has_involutive_inv" xlink:title="division_monoid.to_has_involutive_inv">
<path fill="none" stroke="black" d="M9447.31,-2646.2C9464.81,-2629.5 9494.41,-2601 9514.61,-2581.6"/>
<polygon fill="black" stroke="black" points="9517.08,-2584.08 9521.81,-2574.6 9512.2,-2579.06 9517.08,-2584.08"/>
</a>
</g>
</g>
<!-- div_inv_monoid&#45;&gt;monoid -->
<g id="edge795" class="edge">
<title>div_inv_monoid&#45;&gt;monoid</title>
<g id="a_edge795"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/div_inv_monoid.to_monoid" xlink:title="div_inv_monoid.to_monoid">
<path fill="none" stroke="black" d="M9319.11,-2545.5C9259.61,-2529.7 9158.91,-2502.6 9063.01,-2473.7"/>
<polygon fill="black" stroke="black" points="9063.8,-2470.28 9053.21,-2470.8 9061.81,-2476.99 9063.8,-2470.28"/>
</a>
</g>
</g>
<!-- div_inv_monoid&#45;&gt;has_div -->
<g id="edge796" class="edge">
<title>div_inv_monoid&#45;&gt;has_div</title>
<g id="a_edge796"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/div_inv_monoid.to_has_div" xlink:title="div_inv_monoid.to_has_div">
<path fill="none" stroke="black" d="M9370.71,-2545.2C9370.41,-2529.3 9369.91,-2503 9369.51,-2483.7"/>
<polygon fill="black" stroke="black" points="9373.01,-2483.53 9369.31,-2473.6 9366.01,-2483.67 9373.01,-2483.53"/>
</a>
</g>
</g>
<!-- has_inv -->
<g id="node421" class="node">
<title>has_inv</title>
<g id="a_node421"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_inv" xlink:title="has_inv">
<polygon fill="none" stroke="black" points="9665.51,-2475 9592.51,-2475 9592.51,-2444 9665.51,-2444 9665.51,-2475"/>
<text text-anchor="middle" x="9629.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">has_inv</text>
</a>
</g>
</g>
<!-- div_inv_monoid&#45;&gt;has_inv -->
<g id="edge797" class="edge">
<title>div_inv_monoid&#45;&gt;has_inv</title>
<g id="a_edge797"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/div_inv_monoid.to_has_inv" xlink:title="div_inv_monoid.to_has_inv">
<path fill="none" stroke="black" d="M9406.31,-2545.4C9452.61,-2527.7 9533.81,-2496.5 9584.31,-2477.1"/>
<polygon fill="black" stroke="black" points="9585.56,-2480.37 9593.71,-2473.6 9583.12,-2473.81 9585.56,-2480.37"/>
</a>
</g>
</g>
<!-- cancel_monoid_with_zero&#45;&gt;monoid_with_zero -->
<g id="edge800" class="edge">
<title>cancel_monoid_with_zero&#45;&gt;monoid_with_zero</title>
<g id="a_edge800"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cancel_monoid_with_zero.to_monoid_with_zero" xlink:title="cancel_monoid_with_zero.to_monoid_with_zero">
<path fill="none" stroke="black" d="M9347.01,-2747.4C9316.41,-2730.1 9263.11,-2699.9 9228.71,-2680.5"/>
<polygon fill="black" stroke="black" points="9230.44,-2677.46 9220.01,-2675.6 9227.01,-2683.56 9230.44,-2677.46"/>
</a>
</g>
</g>
<!-- has_lt -->
<g id="node290" class="node">
<title>has_lt</title>
<g id="a_node290"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_lt" xlink:title="has_lt">
<polygon fill="none" stroke="black" points="13921.01,-2071 13857.01,-2071 13857.01,-2040 13921.01,-2040 13921.01,-2071"/>
<text text-anchor="middle" x="13889.01" y="-2051.8" font-family="Courier,monospace" font-size="14.00">has_lt</text>
</a>
</g>
</g>
<!-- preorder&#45;&gt;has_lt -->
<g id="edge526" class="edge">
<title>preorder&#45;&gt;has_lt</title>
<g id="a_edge526"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/preorder.to_has_lt" xlink:title="preorder.to_has_lt">
<path fill="none" stroke="black" d="M13770.01,-2141.4C13794.01,-2124.4 13834.01,-2095.1 13862.01,-2075.7"/>
<polygon fill="black" stroke="black" points="13864.11,-2078.5 13870.01,-2069.7 13859.91,-2072.9 13864.11,-2078.5"/>
</a>
</g>
</g>
<!-- has_le -->
<g id="node292" class="node">
<title>has_le</title>
<g id="a_node292"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_le" xlink:title="has_le">
<polygon fill="none" stroke="black" points="11669.01,-1767 11605.01,-1767 11605.01,-1736 11669.01,-1736 11669.01,-1767"/>
<text text-anchor="middle" x="11637.01" y="-1747.8" font-family="Courier,monospace" font-size="14.00">has_le</text>
</a>
</g>
</g>
<!-- preorder&#45;&gt;has_le -->
<g id="edge527" class="edge">
<title>preorder&#45;&gt;has_le</title>
<g id="a_edge527"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/preorder.to_has_le" xlink:title="preorder.to_has_le">
<path fill="none" stroke="black" d="M13710.01,-2152.5C13666.01,-2149.8 13592.01,-2145.3 13529.01,-2141.5 13000.01,-2109.4 12857.01,-2180.2 12338.01,-2069.5 12302.01,-2061.9 12296.01,-2050.2 12261.01,-2040.5 12083.01,-1991.8 12016.01,-2053.8 11852.01,-1968.5 11760.01,-1920.6 11683.01,-1819.7 11652.01,-1775.1"/>
<polygon fill="black" stroke="black" points="11654.67,-1772.8 11646.01,-1766.7 11648.98,-1776.87 11654.67,-1772.8"/>
</a>
</g>
</g>
<!-- category_theory.small_category -->
<g id="node293" class="node">
<title>category_theory.small_category</title>
<g id="a_node293"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.small_category" xlink:title="category_theory.small_category">
<polygon fill="none" stroke="black" points="13841.01,-2071 13575.01,-2071 13575.01,-2040 13841.01,-2040 13841.01,-2071"/>
<text text-anchor="middle" x="13708.01" y="-2051.8" font-family="Courier,monospace" font-size="14.00">category_theory.small_category</text>
</a>
</g>
</g>
<!-- preorder&#45;&gt;category_theory.small_category -->
<g id="edge528" class="edge">
<title>preorder&#45;&gt;category_theory.small_category</title>
<g id="a_edge528"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/preorder.small_category" xlink:title="preorder.small_category">
<path fill="none" stroke="black" d="M13745.01,-2141.2C13738.01,-2125.1 13726.01,-2098.2 13718.01,-2078.9"/>
<polygon fill="black" stroke="black" points="13721.18,-2077.4 13714.01,-2069.6 13714.75,-2080.17 13721.18,-2077.4"/>
</a>
</g>
</g>
<!-- first_order.language.Structure -->
<g id="node294" class="node">
<title>first_order.language.Structure</title>
<g id="a_node294"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.Structure" xlink:title="first_order.language.Structure">
<polygon fill="none" stroke="black" points="11792.01,-857.98 11526.01,-857.98 11526.01,-826.98 11792.01,-826.98 11792.01,-857.98"/>
<text text-anchor="middle" x="11659.01" y="-838.78" font-family="Courier,monospace" font-size="14.00">first_order.language.Structure</text>
</a>
</g>
</g>
<!-- has_le&#45;&gt;first_order.language.Structure -->
<g id="edge529" class="edge">
<title>has_le&#45;&gt;first_order.language.Structure</title>
<g id="a_edge529"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.order.Structure" xlink:title="first_order.language.order.Structure">
<path fill="none" stroke="black" d="M11615.01,-1737.4C11572.01,-1708.7 11481.01,-1637.3 11481.01,-1551 11481.01,-1551 11481.01,-1551 11481.01,-1347 11481.01,-1251.2 11460.01,-1223.5 11487.01,-1131.5 11519.01,-1021.6 11603.01,-910.8 11641.01,-865.39"/>
<polygon fill="black" stroke="black" points="11643.63,-867.73 11647.01,-857.69 11638.11,-863.43 11643.63,-867.73"/>
</a>
</g>
</g>
<!-- first_order.language.Structure&#45;&gt;first_order.language.Structure -->
<g id="edge530" class="edge">
<title>first_order.language.Structure&#45;&gt;first_order.language.Structure</title>
<g id="a_edge530"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.with_constants_self_Structure" xlink:title="first_order.language.with_constants_self_Structure">
<path fill="none" stroke="black" d="M11706.01,-857.54C11754.01,-866.24 11808.01,-861.39 11808.01,-842.98 11808.01,-825.83 11761.01,-820.45 11716.01,-826.82"/>
<polygon fill="black" stroke="black" points="11715.34,-823.38 11706.01,-828.42 11716.44,-830.3 11715.34,-823.38"/>
</a>
</g>
</g>
<!-- first_order.language.skolem₁_Structure -->
<g id="node295" class="node">
<title>first_order.language.skolem₁_Structure</title>
<g id="a_node295"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.skolem₁_Structure" xlink:title="first_order.language.skolem₁_Structure">
<ellipse fill="black" stroke="black" cx="11456.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- first_order.language.Structure&#45;&gt;first_order.language.skolem₁_Structure -->
<g id="edge531" class="edge">
<title>first_order.language.Structure&#45;&gt;first_order.language.skolem₁_Structure</title>
<g id="a_edge531"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.skolem₁_Structure" xlink:title="first_order.language.skolem₁_Structure">
<path fill="none" stroke="black" d="M11626.01,-857.52C11588.01,-871.98 11527.01,-897.23 11479.01,-929.48 11475.01,-932.39 11471.01,-936.67 11466.01,-939.62"/>
<polygon fill="black" stroke="black" points="11464.38,-936.47 11456.01,-942.97 11466.61,-943.11 11464.38,-936.47"/>
</a>
</g>
</g>
<!-- first_order.language.sum_Structure -->
<g id="node296" class="node">
<title>first_order.language.sum_Structure</title>
<g id="a_node296"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.sum_Structure" xlink:title="first_order.language.sum_Structure">
<ellipse fill="black" stroke="black" cx="11668.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- first_order.language.Structure&#45;&gt;first_order.language.sum_Structure -->
<g id="edge532" class="edge">
<title>first_order.language.Structure&#45;&gt;first_order.language.sum_Structure</title>
<g id="a_edge532"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.sum_Structure" xlink:title="first_order.language.sum_Structure">
<path fill="none" stroke="black" d="M11651.01,-828.21C11647.01,-806.71 11651.01,-765.93 11660.01,-749.79"/>
<polygon fill="black" stroke="black" points="11662.66,-752.13 11668.01,-742.99 11658.13,-746.8 11662.66,-752.13"/>
</a>
</g>
</g>
<!-- first_order.language.Structure&#45;&gt;first_order.language.sum_Structure -->
<g id="edge533" class="edge">
<title>first_order.language.Structure&#45;&gt;first_order.language.sum_Structure</title>
<g id="a_edge533"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.sum_Structure" xlink:title="first_order.language.sum_Structure">
<path fill="none" stroke="black" d="M11660.01,-828.21C11662.01,-808.14 11665.01,-771.28 11667.01,-753.34"/>
<polygon fill="black" stroke="black" points="11670.52,-753.44 11668.01,-743.15 11663.55,-752.76 11670.52,-753.44"/>
</a>
</g>
</g>
<!-- first_order.language.with_constants_Structure -->
<g id="node297" class="node">
<title>first_order.language.with_constants_Structure</title>
<g id="a_node297"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.with_constants_Structure" xlink:title="first_order.language.with_constants_Structure">
<ellipse fill="black" stroke="black" cx="11650.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- first_order.language.Structure&#45;&gt;first_order.language.with_constants_Structure -->
<g id="edge534" class="edge">
<title>first_order.language.Structure&#45;&gt;first_order.language.with_constants_Structure</title>
<g id="a_edge534"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.with_constants_Structure" xlink:title="first_order.language.with_constants_Structure">
<path fill="none" stroke="black" d="M11648.01,-828.21C11640.01,-807.13 11638.01,-767.52 11643.01,-750.77"/>
<polygon fill="black" stroke="black" points="11645.93,-752.76 11650.01,-742.99 11640.72,-748.08 11645.93,-752.76"/>
</a>
</g>
</g>
<!-- first_order.language.Structure&#45;&gt;first_order.language.with_constants_Structure -->
<g id="edge535" class="edge">
<title>first_order.language.Structure&#45;&gt;first_order.language.with_constants_Structure</title>
<g id="a_edge535"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.with_constants_Structure" xlink:title="first_order.language.with_constants_Structure">
<path fill="none" stroke="black" d="M11658.01,-828.21C11656.01,-808.14 11653.01,-771.28 11651.01,-753.34"/>
<polygon fill="black" stroke="black" points="11654.47,-752.76 11650.01,-743.15 11647.51,-753.44 11654.47,-752.76"/>
</a>
</g>
</g>
<!-- first_order.language.skolem₁_Structure&#45;&gt;first_order.language.Structure -->
<g id="edge708" class="edge">
<title>first_order.language.skolem₁_Structure&#45;&gt;first_order.language.Structure</title>
<g id="a_edge708"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.skolem₁_Structure" xlink:title="first_order.language.skolem₁_Structure">
<path fill="none" stroke="black" d="M11456.01,-942.97C11447.01,-942.71 11454.01,-934.26 11461.01,-929.48 11505.01,-899.63 11561.01,-875.77 11602.01,-860.92"/>
<polygon fill="black" stroke="black" points="11603.67,-864.05 11612.01,-857.52 11601.42,-857.43 11603.67,-864.05"/>
</a>
</g>
</g>
<!-- first_order.language.sum_Structure&#45;&gt;first_order.language.Structure -->
<g id="edge824" class="edge">
<title>first_order.language.sum_Structure&#45;&gt;first_order.language.Structure</title>
<g id="a_edge824"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.sum_Structure" xlink:title="first_order.language.sum_Structure">
<path fill="none" stroke="black" d="M11668.01,-742.99C11680.01,-743.79 11680.01,-789.36 11673.01,-818.38"/>
<polygon fill="black" stroke="black" points="11669.59,-817.62 11670.01,-828.21 11676.28,-819.67 11669.59,-817.62"/>
</a>
</g>
</g>
<!-- first_order.language.with_constants_Structure&#45;&gt;first_order.language.Structure -->
<g id="edge825" class="edge">
<title>first_order.language.with_constants_Structure&#45;&gt;first_order.language.Structure</title>
<g id="a_edge825"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.with_constants_Structure" xlink:title="first_order.language.with_constants_Structure">
<path fill="none" stroke="black" d="M11650.01,-742.99C11662.01,-743.78 11670.01,-788.96 11669.01,-818"/>
<polygon fill="black" stroke="black" points="11665.5,-817.72 11667.01,-828.21 11672.37,-819.07 11665.5,-817.72"/>
</a>
</g>
</g>
<!-- category_theory.functor.comp.reflects_isomorphisms&#45;&gt;category_theory.reflects_isomorphisms -->
<g id="edge1647" class="edge">
<title>category_theory.functor.comp.reflects_isomorphisms&#45;&gt;category_theory.reflects_isomorphisms</title>
<g id="a_edge1647"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.comp.reflects_isomorphisms" xlink:title="category_theory.functor.comp.reflects_isomorphisms">
<path fill="none" stroke="black" d="M7436.31,-742.99C7448.41,-743.79 7452.11,-789.36 7447.71,-818.38"/>
<polygon fill="black" stroke="black" points="7444.28,-817.71 7445.71,-828.21 7451.14,-819.11 7444.28,-817.71"/>
</a>
</g>
</g>
<!-- category_theory.reflective -->
<g id="node299" class="node">
<title>category_theory.reflective</title>
<g id="a_node299"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.reflective" xlink:title="category_theory.reflective">
<polygon fill="none" stroke="black" points="5784.01,-1161 5552.01,-1161 5552.01,-1130 5784.01,-1130 5784.01,-1161"/>
<text text-anchor="middle" x="5668.01" y="-1141.8" font-family="Courier,monospace" font-size="14.00">category_theory.reflective</text>
</a>
</g>
</g>
<!-- category_theory.reflective&#45;&gt;category_theory.full -->
<g id="edge540" class="edge">
<title>category_theory.reflective&#45;&gt;category_theory.full</title>
<g id="a_edge540"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.reflective.to_full" xlink:title="category_theory.reflective.to_full">
<path fill="none" stroke="black" d="M5782.51,-1132.4C5785.71,-1132.1 5788.91,-1131.8 5792.01,-1131.5 6226.71,-1092 6339.81,-1105 6777.81,-1059.6"/>
<polygon fill="black" stroke="black" points="6778.35,-1063.06 6787.91,-1058.5 6777.59,-1056.1 6778.35,-1063.06"/>
</a>
</g>
</g>
<!-- category_theory.reflective&#45;&gt;category_theory.faithful -->
<g id="edge541" class="edge">
<title>category_theory.reflective&#45;&gt;category_theory.faithful</title>
<g id="a_edge541"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.reflective.to_faithful" xlink:title="category_theory.reflective.to_faithful">
<path fill="none" stroke="black" d="M5782.81,-1132.3C5785.91,-1132 5789.01,-1131.8 5792.01,-1131.5 6325.71,-1086.5 6460.81,-1098.9 6995.01,-1059.5 7007.01,-1058.6 7019.61,-1057.6 7032.11,-1056.6"/>
<polygon fill="black" stroke="black" points="7032.52,-1060.08 7042.21,-1055.8 7031.97,-1053.1 7032.52,-1060.08"/>
</a>
</g>
</g>
<!-- category_theory.reflective&#45;&gt;category_theory.is_right_adjoint -->
<g id="edge542" class="edge">
<title>category_theory.reflective&#45;&gt;category_theory.is_right_adjoint</title>
<g id="a_edge542"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.reflective.to_is_right_adjoint" xlink:title="category_theory.reflective.to_is_right_adjoint">
<path fill="none" stroke="black" d="M5678.51,-1131.1C5694.31,-1108.4 5720.31,-1062.3 5699.01,-1030.5 5674.71,-994.2 5631.91,-973.3 5591.61,-961.26"/>
<polygon fill="black" stroke="black" points="5592.49,-957.87 5581.91,-958.54 5590.6,-964.61 5592.49,-957.87"/>
</a>
</g>
</g>
<!-- category_theory.monadic_right_adjoint -->
<g id="node300" class="node">
<title>category_theory.monadic_right_adjoint</title>
<g id="a_node300"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.monadic_right_adjoint" xlink:title="category_theory.monadic_right_adjoint">
<polygon fill="none" stroke="black" points="5692.51,-1060 5367.51,-1060 5367.51,-1029 5692.51,-1029 5692.51,-1060"/>
<text text-anchor="middle" x="5530.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">category_theory.monadic_right_adjoint</text>
</a>
</g>
</g>
<!-- category_theory.reflective&#45;&gt;category_theory.monadic_right_adjoint -->
<g id="edge543" class="edge">
<title>category_theory.reflective&#45;&gt;category_theory.monadic_right_adjoint</title>
<g id="a_edge543"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.monadic_of_reflective" xlink:title="category_theory.monadic_of_reflective">
<path fill="none" stroke="black" d="M5649.11,-1131.4C5625.41,-1114.4 5584.51,-1085.1 5557.41,-1065.7"/>
<polygon fill="black" stroke="black" points="5559.27,-1062.72 5549.11,-1059.7 5555.17,-1068.39 5559.27,-1062.72"/>
</a>
</g>
</g>
<!-- category_theory.reflective.comp -->
<g id="node301" class="node">
<title>category_theory.reflective.comp</title>
<g id="a_node301"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.reflective.comp" xlink:title="category_theory.reflective.comp">
<ellipse fill="black" stroke="black" cx="5858.01" cy="-1044.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.reflective&#45;&gt;category_theory.reflective.comp -->
<g id="edge544" class="edge">
<title>category_theory.reflective&#45;&gt;category_theory.reflective.comp</title>
<g id="a_edge544"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.reflective.comp" xlink:title="category_theory.reflective.comp">
<path fill="none" stroke="black" d="M5690.41,-1131.5C5722.71,-1116.7 5781.01,-1090.9 5826.01,-1059.5 5831.51,-1055.7 5836.91,-1049.7 5847.41,-1047.1"/>
<polygon fill="black" stroke="black" points="5848.05,-1050.55 5857.61,-1046 5847.3,-1043.59 5848.05,-1050.55"/>
</a>
</g>
</g>
<!-- category_theory.reflective&#45;&gt;category_theory.reflective.comp -->
<g id="edge545" class="edge">
<title>category_theory.reflective&#45;&gt;category_theory.reflective.comp</title>
<g id="a_edge545"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.reflective.comp" xlink:title="category_theory.reflective.comp">
<path fill="none" stroke="black" d="M5703.91,-1131.5C5740.71,-1116.7 5799.01,-1090.9 5844.01,-1059.5 5846.51,-1057.8 5849.01,-1055.6 5851.11,-1053.5"/>
<polygon fill="black" stroke="black" points="5853.72,-1055.83 5857.91,-1046.1 5848.57,-1051.1 5853.72,-1055.83"/>
</a>
</g>
</g>
<!-- category_theory.monadic_right_adjoint&#45;&gt;category_theory.is_right_adjoint -->
<g id="edge546" class="edge">
<title>category_theory.monadic_right_adjoint&#45;&gt;category_theory.is_right_adjoint</title>
<g id="a_edge546"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.monadic_right_adjoint.to_is_right_adjoint" xlink:title="category_theory.monadic_right_adjoint.to_is_right_adjoint">
<path fill="none" stroke="black" d="M5524.71,-1030.2C5518.61,-1014.2 5508.31,-987.44 5500.91,-968.18"/>
<polygon fill="black" stroke="black" points="5504.09,-966.69 5497.21,-958.63 5497.56,-969.22 5504.09,-966.69"/>
</a>
</g>
</g>
<!-- category_theory.reflective.comp&#45;&gt;category_theory.reflective -->
<g id="edge547" class="edge">
<title>category_theory.reflective.comp&#45;&gt;category_theory.reflective</title>
<g id="a_edge547"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.reflective.comp" xlink:title="category_theory.reflective.comp">
<path fill="none" stroke="black" d="M5858.41,-1046C5875.91,-1046.1 5869.01,-1054.6 5862.01,-1059.5 5820.41,-1088.6 5767.31,-1112.9 5726.81,-1128"/>
<polygon fill="black" stroke="black" points="5725.49,-1124.76 5717.31,-1131.5 5727.91,-1131.33 5725.49,-1124.76"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limit -->
<g id="node302" class="node">
<title>category_theory.limits.preserves_limit</title>
<g id="a_node302"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_limit" xlink:title="category_theory.limits.preserves_limit">
<polygon fill="none" stroke="black" points="4784.51,-857.98 4451.51,-857.98 4451.51,-826.98 4784.51,-826.98 4784.51,-857.98"/>
<text text-anchor="middle" x="4618.01" y="-838.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.preserves_limit</text>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limit&#45;&gt;category_theory.is_iso -->
<g id="edge560" class="edge">
<title>category_theory.limits.preserves_limit&#45;&gt;category_theory.is_iso</title>
<g id="a_edge560"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pullback_comparison.category_theory.is_iso" xlink:title="category_theory.limits.pullback_comparison.category_theory.is_iso">
<path fill="none" stroke="black" d="M4593.81,-828.21C4582.91,-812.03 4581.31,-784.95 4589.11,-765.65"/>
<polygon fill="black" stroke="black" points="4592.31,-767.1 4593.91,-756.63 4586.13,-763.81 4592.31,-767.1"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limit&#45;&gt;category_theory.is_iso -->
<g id="edge561" class="edge">
<title>category_theory.limits.preserves_limit&#45;&gt;category_theory.is_iso</title>
<g id="a_edge561"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pi_comparison.category_theory.is_iso" xlink:title="category_theory.limits.pi_comparison.category_theory.is_iso">
<path fill="none" stroke="black" d="M4603.51,-828.21C4597.01,-812.18 4596.01,-785.44 4600.51,-766.18"/>
<polygon fill="black" stroke="black" points="4603.86,-767.22 4603.51,-756.63 4597.18,-765.12 4603.86,-767.22"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limit&#45;&gt;category_theory.is_iso -->
<g id="edge562" class="edge">
<title>category_theory.limits.preserves_limit&#45;&gt;category_theory.is_iso</title>
<g id="a_edge562"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.prod_comparison.category_theory.is_iso" xlink:title="category_theory.limits.prod_comparison.category_theory.is_iso">
<path fill="none" stroke="black" d="M4613.21,-828.21C4611.01,-812.33 4610.71,-785.93 4612.11,-766.72"/>
<polygon fill="black" stroke="black" points="4615.61,-766.95 4613.21,-756.63 4608.65,-766.19 4615.61,-766.95"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limit&#45;&gt;category_theory.is_iso -->
<g id="edge563" class="edge">
<title>category_theory.limits.preserves_limit&#45;&gt;category_theory.is_iso</title>
<g id="a_edge563"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.equalizer_comparison.category_theory.is_iso" xlink:title="category_theory.limits.equalizer_comparison.category_theory.is_iso">
<path fill="none" stroke="black" d="M4622.81,-828.21C4625.01,-812.33 4625.31,-785.93 4623.91,-766.72"/>
<polygon fill="black" stroke="black" points="4627.38,-766.19 4622.81,-756.63 4620.42,-766.95 4627.38,-766.19"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limit&#45;&gt;category_theory.is_iso -->
<g id="edge564" class="edge">
<title>category_theory.limits.preserves_limit&#45;&gt;category_theory.is_iso</title>
<g id="a_edge564"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.kernel_comparison.category_theory.is_iso" xlink:title="category_theory.limits.kernel_comparison.category_theory.is_iso">
<path fill="none" stroke="black" d="M4632.51,-828.21C4639.01,-812.18 4640.01,-785.44 4635.51,-766.18"/>
<polygon fill="black" stroke="black" points="4638.85,-765.12 4632.51,-756.63 4632.17,-767.22 4638.85,-765.12"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limit&#45;&gt;category_theory.is_iso -->
<g id="edge565" class="edge">
<title>category_theory.limits.preserves_limit&#45;&gt;category_theory.is_iso</title>
<g id="a_edge565"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.terminal_comparison.category_theory.is_iso" xlink:title="category_theory.limits.terminal_comparison.category_theory.is_iso">
<path fill="none" stroke="black" d="M4642.21,-828.21C4653.11,-812.03 4654.71,-784.95 4646.91,-765.65"/>
<polygon fill="black" stroke="black" points="4649.9,-763.81 4642.11,-756.63 4643.72,-767.1 4649.9,-763.81"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limit&#45;&gt;category_theory.limits.category_theory.functor.map.has_kernel -->
<g id="edge566" class="edge">
<title>category_theory.limits.preserves_limit&#45;&gt;category_theory.limits.category_theory.functor.map.has_kernel</title>
<g id="a_edge566"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.functor.map.has_kernel" xlink:title="category_theory.limits.category_theory.functor.map.has_kernel">
<path fill="none" stroke="black" d="M4656.71,-828.37C4697.51,-813.33 4762.71,-787.14 4815.01,-756.48 4833.31,-745.73 4834.91,-738.58 4853.01,-727.48 4981.91,-648.47 5076.41,-688.76 5146.01,-554.48 5168.01,-511.96 5110.31,-462.68 5088.21,-445.91"/>
<polygon fill="black" stroke="black" points="5090.26,-443.07 5080.11,-440.03 5086.15,-448.74 5090.26,-443.07"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_zero_morphisms_of_preserves_terminal_object -->
<g id="node303" class="node">
<title>category_theory.functor.preserves_zero_morphisms_of_preserves_terminal_object</title>
<g id="a_node303"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_zero_morphisms_of_preserves_terminal_object" xlink:title="category_theory.functor.preserves_zero_morphisms_of_preserves_terminal_object">
<ellipse fill="black" stroke="black" cx="5567.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limit&#45;&gt;category_theory.functor.preserves_zero_morphisms_of_preserves_terminal_object -->
<g id="edge567" class="edge">
<title>category_theory.limits.preserves_limit&#45;&gt;category_theory.functor.preserves_zero_morphisms_of_preserves_terminal_object</title>
<g id="a_edge567"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_zero_morphisms_of_preserves_terminal_object" xlink:title="category_theory.functor.preserves_zero_morphisms_of_preserves_terminal_object">
<path fill="none" stroke="black" d="M4747.51,-828.47C4986.51,-803.54 5479.91,-752.07 5556.81,-744.04"/>
<polygon fill="black" stroke="black" points="5557.33,-747.51 5566.91,-742.99 5556.61,-740.54 5557.33,-747.51"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_preserves_limit -->
<g id="node304" class="node">
<title>category_theory.limits.comp_preserves_limit</title>
<g id="a_node304"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_limit" xlink:title="category_theory.limits.comp_preserves_limit">
<ellipse fill="black" stroke="black" cx="4862.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limit&#45;&gt;category_theory.limits.comp_preserves_limit -->
<g id="edge568" class="edge">
<title>category_theory.limits.preserves_limit&#45;&gt;category_theory.limits.comp_preserves_limit</title>
<g id="a_edge568"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_limit" xlink:title="category_theory.limits.comp_preserves_limit">
<path fill="none" stroke="black" d="M4658.81,-828.45C4703.51,-814.95 4774.81,-791.19 4830.01,-756.48 4835.71,-752.91 4841.01,-746.76 4851.41,-744.18"/>
<polygon fill="black" stroke="black" points="4852.09,-747.62 4861.61,-742.98 4851.27,-740.67 4852.09,-747.62"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limit&#45;&gt;category_theory.limits.comp_preserves_limit -->
<g id="edge569" class="edge">
<title>category_theory.limits.preserves_limit&#45;&gt;category_theory.limits.comp_preserves_limit</title>
<g id="a_edge569"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_limit" xlink:title="category_theory.limits.comp_preserves_limit">
<path fill="none" stroke="black" d="M4672.91,-828.45C4721.51,-814.95 4792.81,-791.19 4848.01,-756.48 4850.61,-754.86 4853.11,-752.71 4855.21,-750.61"/>
<polygon fill="black" stroke="black" points="4857.88,-752.88 4861.91,-743.08 4852.65,-748.22 4857.88,-752.88"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_zero_morphisms_of_preserves_terminal_object&#45;&gt;category_theory.functor.preserves_zero_morphisms -->
<g id="edge570" class="edge">
<title>category_theory.functor.preserves_zero_morphisms_of_preserves_terminal_object&#45;&gt;category_theory.functor.preserves_zero_morphisms</title>
<g id="a_edge570"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_zero_morphisms_of_preserves_terminal_object" xlink:title="category_theory.functor.preserves_zero_morphisms_of_preserves_terminal_object">
<path fill="none" stroke="black" d="M5567.11,-740.96C5573.51,-739.82 5881.01,-684.76 6034.61,-657.27"/>
<polygon fill="black" stroke="black" points="6035.29,-660.71 6044.51,-655.5 6034.05,-653.81 6035.29,-660.71"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_preserves_limit&#45;&gt;category_theory.limits.preserves_limit -->
<g id="edge571" class="edge">
<title>category_theory.limits.comp_preserves_limit&#45;&gt;category_theory.limits.preserves_limit</title>
<g id="a_edge571"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_limit" xlink:title="category_theory.limits.comp_preserves_limit">
<path fill="none" stroke="black" d="M4862.41,-742.98C4879.91,-743.12 4873.31,-751.91 4866.01,-756.48 4814.21,-789.09 4748.01,-812.03 4696.81,-825.89"/>
<polygon fill="black" stroke="black" points="4695.89,-822.51 4687.11,-828.45 4697.68,-829.28 4695.89,-822.51"/>
</a>
</g>
</g>
<!-- has_besicovitch_covering -->
<g id="node305" class="node">
<title>has_besicovitch_covering</title>
<g id="a_node305"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_besicovitch_covering" xlink:title="has_besicovitch_covering">
<polygon fill="none" stroke="black" points="13484.01,-1970 13268.01,-1970 13268.01,-1939 13484.01,-1939 13484.01,-1970"/>
<text text-anchor="middle" x="13376.01" y="-1950.8" font-family="Courier,monospace" font-size="14.00">has_besicovitch_covering</text>
</a>
</g>
</g>
<!-- finite_dimensional -->
<g id="node306" class="node">
<title>finite_dimensional</title>
<g id="a_node306"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/finite_dimensional" xlink:title="finite_dimensional">
<polygon fill="none" stroke="black" points="13458.51,-2071 13293.51,-2071 13293.51,-2040 13458.51,-2040 13458.51,-2071"/>
<text text-anchor="middle" x="13376.01" y="-2051.8" font-family="Courier,monospace" font-size="14.00">finite_dimensional</text>
</a>
</g>
</g>
<!-- finite_dimensional&#45;&gt;proper_space -->
<g id="edge572" class="edge">
<title>finite_dimensional&#45;&gt;proper_space</title>
<g id="a_edge572"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/finite_dimensional.proper_real" xlink:title="finite_dimensional.proper_real">
<path fill="none" stroke="black" d="M13458.01,-2047.8C13688.01,-2030.3 14324.01,-1980.8 14342.01,-1968.5 14373.01,-1947.5 14389.01,-1904.5 14396.01,-1877.6"/>
<polygon fill="black" stroke="black" points="14399.44,-1878.3 14398.01,-1867.8 14392.59,-1876.9 14399.44,-1878.3"/>
</a>
</g>
</g>
<!-- finite_dimensional&#45;&gt;has_besicovitch_covering -->
<g id="edge573" class="edge">
<title>finite_dimensional&#45;&gt;has_besicovitch_covering</title>
<g id="a_edge573"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/besicovitch.has_besicovitch_covering" xlink:title="besicovitch.has_besicovitch_covering">
<path fill="none" stroke="black" d="M13376.01,-2040.2C13376.01,-2024.3 13376.01,-1998 13376.01,-1978.7"/>
<polygon fill="black" stroke="black" points="13379.51,-1978.6 13376.01,-1968.6 13372.51,-1978.6 13379.51,-1978.6"/>
</a>
</g>
</g>
<!-- is_separable.of_finite -->
<g id="node307" class="node">
<title>is_separable.of_finite</title>
<g id="a_node307"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_separable.of_finite" xlink:title="is_separable.of_finite">
<ellipse fill="black" stroke="black" cx="13252.01" cy="-1954.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- finite_dimensional&#45;&gt;is_separable.of_finite -->
<g id="edge574" class="edge">
<title>finite_dimensional&#45;&gt;is_separable.of_finite</title>
<g id="a_edge574"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_separable.of_finite" xlink:title="is_separable.of_finite">
<path fill="none" stroke="black" d="M13352.01,-2040.3C13327.01,-2025.1 13287.01,-1998.7 13260.01,-1968.5 13259.01,-1967.2 13258.01,-1965.7 13257.01,-1964.2"/>
<polygon fill="black" stroke="black" points="13259.9,-1962.18 13252.01,-1955.1 13253.76,-1965.55 13259.9,-1962.18"/>
</a>
</g>
</g>
<!-- is_separable -->
<g id="node308" class="node">
<title>is_separable</title>
<g id="a_node308"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_separable" xlink:title="is_separable">
<polygon fill="none" stroke="black" points="13559.51,-1868 13444.51,-1868 13444.51,-1837 13559.51,-1837 13559.51,-1868"/>
<text text-anchor="middle" x="13502.01" y="-1848.8" font-family="Courier,monospace" font-size="14.00">is_separable</text>
</a>
</g>
</g>
<!-- is_separable.of_finite&#45;&gt;is_separable -->
<g id="edge575" class="edge">
<title>is_separable.of_finite&#45;&gt;is_separable</title>
<g id="a_edge575"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_separable.of_finite" xlink:title="is_separable.of_finite">
<path fill="none" stroke="black" d="M13252.01,-1952.9C13252.01,-1951.9 13255.01,-1943.7 13260.01,-1939.5 13311.01,-1898 13383.01,-1876 13435.01,-1864.7"/>
<polygon fill="black" stroke="black" points="13435.89,-1868.09 13445.01,-1862.7 13434.52,-1861.23 13435.89,-1868.09"/>
</a>
</g>
</g>
<!-- measure_theory.sigma_finite&#45;&gt;measure_theory.measure.inv.measure_theory.sigma_finite -->
<g id="edge927" class="edge">
<title>measure_theory.sigma_finite&#45;&gt;measure_theory.measure.inv.measure_theory.sigma_finite</title>
<g id="a_edge927"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.inv.measure_theory.sigma_finite" xlink:title="measure_theory.measure.inv.measure_theory.sigma_finite">
<path fill="none" stroke="black" d="M16456.01,-626.21C16446.01,-606.14 16433.01,-569.28 16429.01,-551.34"/>
<polygon fill="black" stroke="black" points="16432.51,-551.15 16429.01,-541.15 16425.51,-551.15 16432.51,-551.15"/>
</a>
</g>
</g>
<!-- measure_theory.sigma_finite&#45;&gt;measure_theory.sigma_finite -->
<g id="edge928" class="edge">
<title>measure_theory.sigma_finite&#45;&gt;measure_theory.sigma_finite</title>
<g id="a_edge928"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.singular_part.measure_theory.sigma_finite" xlink:title="measure_theory.measure.singular_part.measure_theory.sigma_finite">
<path fill="none" stroke="black" d="M16585.01,-645.95C16596.01,-644.91 16603.01,-643.26 16603.01,-640.98 16603.01,-639.52 16600.01,-638.32 16595.01,-637.37"/>
<polygon fill="black" stroke="black" points="16595.39,-633.89 16585.01,-636.01 16594.45,-640.83 16595.39,-633.89"/>
</a>
</g>
</g>
<!-- measure_theory.sigma_finite&#45;&gt;measure_theory.sigma_finite -->
<g id="edge929" class="edge">
<title>measure_theory.sigma_finite&#45;&gt;measure_theory.sigma_finite</title>
<g id="a_edge929"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.restrict.sigma_finite" xlink:title="measure_theory.restrict.sigma_finite">
<path fill="none" stroke="black" d="M16585.01,-652.75C16606.01,-651.22 16621.01,-647.3 16621.01,-640.98 16621.01,-635.75 16610.01,-632.16 16595.01,-630.21"/>
<polygon fill="black" stroke="black" points="16595.31,-626.72 16585.01,-629.21 16594.62,-633.69 16595.31,-626.72"/>
</a>
</g>
</g>
<!-- measure_theory.sigma_finite&#45;&gt;measure_theory.sigma_finite -->
<g id="edge930" class="edge">
<title>measure_theory.sigma_finite&#45;&gt;measure_theory.sigma_finite</title>
<g id="a_edge930"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.with_density.measure_theory.sigma_finite" xlink:title="measure_theory.measure.with_density.measure_theory.sigma_finite">
<path fill="none" stroke="black" d="M16520.01,-655.54C16576.01,-664.24 16639.01,-659.39 16639.01,-640.98 16639.01,-623.69 16583.01,-618.36 16531.01,-624.99"/>
<polygon fill="black" stroke="black" points="16529.48,-621.66 16520.01,-626.42 16530.38,-628.6 16529.48,-621.66"/>
</a>
</g>
</g>
<!-- measure_theory.signed_measure.have_lebesgue_decomposition -->
<g id="node406" class="node">
<title>measure_theory.signed_measure.have_lebesgue_decomposition</title>
<g id="a_node406"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.signed_measure.have_lebesgue_decomposition" xlink:title="measure_theory.signed_measure.have_lebesgue_decomposition">
<polygon fill="none" stroke="black" points="16272.51,-554.98 15779.51,-554.98 15779.51,-523.98 16272.51,-523.98 16272.51,-554.98"/>
<text text-anchor="middle" x="16026.01" y="-535.78" font-family="Courier,monospace" font-size="14.00">measure_theory.signed_measure.have_lebesgue_decomposition</text>
</a>
</g>
</g>
<!-- measure_theory.sigma_finite&#45;&gt;measure_theory.signed_measure.have_lebesgue_decomposition -->
<g id="edge926" class="edge">
<title>measure_theory.sigma_finite&#45;&gt;measure_theory.signed_measure.have_lebesgue_decomposition</title>
<g id="a_edge926"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.signed_measure.have_lebesgue_decomposition_of_sigma_finite" xlink:title="measure_theory.signed_measure.have_lebesgue_decomposition_of_sigma_finite">
<path fill="none" stroke="black" d="M16406.01,-626.42C16325.01,-608.24 16182.01,-576.01 16096.01,-556.76"/>
<polygon fill="black" stroke="black" points="16096.54,-553.29 16086.01,-554.53 16095.01,-560.12 16096.54,-553.29"/>
</a>
</g>
</g>
<!-- measure_theory.add.sigma_finite -->
<g id="node481" class="node">
<title>measure_theory.add.sigma_finite</title>
<g id="a_node481"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.add.sigma_finite" xlink:title="measure_theory.add.sigma_finite">
<ellipse fill="black" stroke="black" cx="16466.01" cy="-539.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- measure_theory.sigma_finite&#45;&gt;measure_theory.add.sigma_finite -->
<g id="edge931" class="edge">
<title>measure_theory.sigma_finite&#45;&gt;measure_theory.add.sigma_finite</title>
<g id="a_edge931"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.add.sigma_finite" xlink:title="measure_theory.add.sigma_finite">
<path fill="none" stroke="black" d="M16456.01,-626.21C16451.01,-604.92 16451.01,-564.72 16459.01,-548.28"/>
<polygon fill="black" stroke="black" points="16461.61,-550.63 16466.01,-540.99 16456.56,-545.78 16461.61,-550.63"/>
</a>
</g>
</g>
<!-- measure_theory.sigma_finite&#45;&gt;measure_theory.add.sigma_finite -->
<g id="edge932" class="edge">
<title>measure_theory.sigma_finite&#45;&gt;measure_theory.add.sigma_finite</title>
<g id="a_edge932"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.add.sigma_finite" xlink:title="measure_theory.add.sigma_finite">
<path fill="none" stroke="black" d="M16466.01,-626.21C16466.01,-606.14 16466.01,-569.28 16466.01,-551.34"/>
<polygon fill="black" stroke="black" points="16469.51,-551.15 16466.01,-541.15 16462.51,-551.15 16469.51,-551.15"/>
</a>
</g>
</g>
<!-- measure_theory.sigma_finite&#45;&gt;measure_theory.measure.neg.measure_theory.sigma_finite -->
<g id="edge933" class="edge">
<title>measure_theory.sigma_finite&#45;&gt;measure_theory.measure.neg.measure_theory.sigma_finite</title>
<g id="a_edge933"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.neg.measure_theory.sigma_finite" xlink:title="measure_theory.measure.neg.measure_theory.sigma_finite">
<path fill="none" stroke="black" d="M16459.01,-626.21C16452.01,-606.03 16446.01,-568.86 16446.01,-551.03"/>
<polygon fill="black" stroke="black" points="16449.49,-551.51 16448.01,-541.02 16442.62,-550.14 16449.49,-551.51"/>
</a>
</g>
</g>
<!-- measure_theory.measure.have_lebesgue_decomposition_of_sigma_finite -->
<g id="node483" class="node">
<title>measure_theory.measure.have_lebesgue_decomposition_of_sigma_finite</title>
<g id="a_node483"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.have_lebesgue_decomposition_of_sigma_finite" xlink:title="measure_theory.measure.have_lebesgue_decomposition_of_sigma_finite">
<ellipse fill="black" stroke="black" cx="16484.01" cy="-539.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- measure_theory.sigma_finite&#45;&gt;measure_theory.measure.have_lebesgue_decomposition_of_sigma_finite -->
<g id="edge934" class="edge">
<title>measure_theory.sigma_finite&#45;&gt;measure_theory.measure.have_lebesgue_decomposition_of_sigma_finite</title>
<g id="a_edge934"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.have_lebesgue_decomposition_of_sigma_finite" xlink:title="measure_theory.measure.have_lebesgue_decomposition_of_sigma_finite">
<path fill="none" stroke="black" d="M16464.01,-626.21C16465.01,-605.5 16472.01,-566.92 16478.01,-549.69"/>
<polygon fill="black" stroke="black" points="16481.2,-551.23 16484.01,-541.02 16475.45,-547.25 16481.2,-551.23"/>
</a>
</g>
</g>
<!-- measure_theory.sigma_finite&#45;&gt;measure_theory.measure.have_lebesgue_decomposition_of_sigma_finite -->
<g id="edge935" class="edge">
<title>measure_theory.sigma_finite&#45;&gt;measure_theory.measure.have_lebesgue_decomposition_of_sigma_finite</title>
<g id="a_edge935"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.have_lebesgue_decomposition_of_sigma_finite" xlink:title="measure_theory.measure.have_lebesgue_decomposition_of_sigma_finite">
<path fill="none" stroke="black" d="M16473.01,-626.21C16480.01,-606.03 16486.01,-568.86 16486.01,-551.03"/>
<polygon fill="black" stroke="black" points="16489.41,-550.14 16484.01,-541.02 16482.54,-551.51 16489.41,-550.14"/>
</a>
</g>
</g>
<!-- topological_space.first_countable_topology&#45;&gt;first_countable_topology.seq_compact_of_compact -->
<g id="edge970" class="edge">
<title>topological_space.first_countable_topology&#45;&gt;first_countable_topology.seq_compact_of_compact</title>
<g id="a_edge970"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_countable_topology.seq_compact_of_compact" xlink:title="first_countable_topology.seq_compact_of_compact">
<path fill="none" stroke="black" d="M13361.01,-1639.2C12985.01,-1616.6 12152.01,-1566.4 12149.01,-1564.5 12147.01,-1563.4 12146.01,-1561.9 12144.01,-1560.1"/>
<polygon fill="black" stroke="black" points="12147.27,-1558.82 12140.01,-1551.1 12140.88,-1561.66 12147.27,-1558.82"/>
</a>
</g>
</g>
<!-- filter.is_countably_generated -->
<g id="node502" class="node">
<title>filter.is_countably_generated</title>
<g id="a_node502"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.is_countably_generated" xlink:title="filter.is_countably_generated">
<polygon fill="none" stroke="black" points="17182.01,-1566 16924.01,-1566 16924.01,-1535 17182.01,-1535 17182.01,-1566"/>
<text text-anchor="middle" x="17053.01" y="-1546.8" font-family="Courier,monospace" font-size="14.00">filter.is_countably_generated</text>
</a>
</g>
</g>
<!-- topological_space.first_countable_topology&#45;&gt;filter.is_countably_generated -->
<g id="edge971" class="edge">
<title>topological_space.first_countable_topology&#45;&gt;filter.is_countably_generated</title>
<g id="a_edge971"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_space.first_countable_topology.nhds_generated_countable" xlink:title="topological_space.first_countable_topology.nhds_generated_countable">
<path fill="none" stroke="black" d="M13723.01,-1641.5C13766.01,-1639.8 13811.01,-1638 13854.01,-1636.5 15039.01,-1595.7 16472.01,-1563.4 16916.01,-1553.9"/>
<polygon fill="black" stroke="black" points="16916.12,-1557.4 16926.01,-1553.6 16915.91,-1550.4 16916.12,-1557.4"/>
</a>
</g>
</g>
<!-- sequential_space -->
<g id="node503" class="node">
<title>sequential_space</title>
<g id="a_node503"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/sequential_space" xlink:title="sequential_space">
<polygon fill="none" stroke="black" points="13616.01,-1566 13468.01,-1566 13468.01,-1535 13616.01,-1535 13616.01,-1566"/>
<text text-anchor="middle" x="13542.01" y="-1546.8" font-family="Courier,monospace" font-size="14.00">sequential_space</text>
</a>
</g>
</g>
<!-- topological_space.first_countable_topology&#45;&gt;sequential_space -->
<g id="edge972" class="edge">
<title>topological_space.first_countable_topology&#45;&gt;sequential_space</title>
<g id="a_edge972"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/topological_space.first_countable_topology.sequential_space" xlink:title="topological_space.first_countable_topology.sequential_space">
<path fill="none" stroke="black" d="M13542.01,-1636.2C13542.01,-1620.3 13542.01,-1594 13542.01,-1574.7"/>
<polygon fill="black" stroke="black" points="13545.51,-1574.6 13542.01,-1564.6 13538.51,-1574.6 13545.51,-1574.6"/>
</a>
</g>
</g>
<!-- measure_theory.sigma_finite_of_locally_finite&#45;&gt;measure_theory.sigma_finite -->
<g id="edge1019" class="edge">
<title>measure_theory.sigma_finite_of_locally_finite&#45;&gt;measure_theory.sigma_finite</title>
<g id="a_edge1019"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.sigma_finite_of_locally_finite" xlink:title="measure_theory.sigma_finite_of_locally_finite">
<path fill="none" stroke="black" d="M17319.01,-942.93C17318.01,-940.78 17294.01,-871.53 17257.01,-828.48 17208.01,-771.59 17191.01,-755.71 17121.01,-727.48 17028.01,-689.97 16758.01,-663.88 16595.01,-651.06"/>
<polygon fill="black" stroke="black" points="16595.26,-647.57 16585.01,-650.27 16594.71,-654.55 16595.26,-647.57"/>
</a>
</g>
</g>
<!-- topological_space.separable_space&#45;&gt;separable_locally_compact_add_group.sigma_compact_space -->
<g id="edge1021" class="edge">
<title>topological_space.separable_space&#45;&gt;separable_locally_compact_add_group.sigma_compact_space</title>
<g id="a_edge1021"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/separable_locally_compact_add_group.sigma_compact_space" xlink:title="separable_locally_compact_add_group.sigma_compact_space">
<path fill="none" stroke="black" d="M16409.01,-1636.4C16363.01,-1595.4 16228.01,-1475.1 16223.01,-1463.5 16203.01,-1417.8 16252.01,-1408.1 16272.01,-1362.5 16291.01,-1320.3 16291.01,-1307.3 16296.01,-1261.5 16301.01,-1222.7 16290.01,-1176.6 16285.01,-1156.8"/>
<polygon fill="black" stroke="black" points="16288.29,-1155.54 16282.01,-1147 16281.59,-1157.59 16288.29,-1155.54"/>
</a>
</g>
</g>
<!-- topological_space.separable_space&#45;&gt;separable_locally_compact_group.sigma_compact_space -->
<g id="edge1022" class="edge">
<title>topological_space.separable_space&#45;&gt;separable_locally_compact_group.sigma_compact_space</title>
<g id="a_edge1022"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/separable_locally_compact_group.sigma_compact_space" xlink:title="separable_locally_compact_group.sigma_compact_space">
<path fill="none" stroke="black" d="M16450.01,-1636.4C16507.01,-1604.6 16636.01,-1521.2 16595.01,-1434.5 16588.01,-1420.7 16392.01,-1273.1 16382.01,-1261.5 16352.01,-1226.7 16328.01,-1176.9 16319.01,-1156.4"/>
<polygon fill="black" stroke="black" points="16322.18,-1154.9 16315.01,-1147.1 16315.75,-1157.67 16322.18,-1154.9"/>
</a>
</g>
</g>
<!-- has_measurable_inf₂ -->
<g id="node519" class="node">
<title>has_measurable_inf₂</title>
<g id="a_node519"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_inf₂" xlink:title="has_measurable_inf₂">
<polygon fill="none" stroke="black" points="14823.01,-1464 14633.01,-1464 14633.01,-1433 14823.01,-1433 14823.01,-1464"/>
<text text-anchor="middle" x="14728.01" y="-1444.8" font-family="Courier,monospace" font-size="14.00">has_measurable_inf₂</text>
</a>
</g>
</g>
<!-- has_continuous_inf.has_measurable_inf₂&#45;&gt;has_measurable_inf₂ -->
<g id="edge1023" class="edge">
<title>has_continuous_inf.has_measurable_inf₂&#45;&gt;has_measurable_inf₂</title>
<g id="a_edge1023"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_inf.has_measurable_inf₂" xlink:title="has_continuous_inf.has_measurable_inf₂">
<path fill="none" stroke="black" d="M14771.01,-1548.9C14770.01,-1546.9 14750.01,-1501.7 14738.01,-1473.1"/>
<polygon fill="black" stroke="black" points="14741.18,-1471.6 14734.01,-1463.8 14734.75,-1474.37 14741.18,-1471.6"/>
</a>
</g>
</g>
<!-- sigma_compact_space_of_locally_compact_second_countable&#45;&gt;sigma_compact_space -->
<g id="edge1025" class="edge">
<title>sigma_compact_space_of_locally_compact_second_countable&#45;&gt;sigma_compact_space</title>
<g id="a_edge1025"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/sigma_compact_space_of_locally_compact_second_countable" xlink:title="sigma_compact_space_of_locally_compact_second_countable">
<path fill="none" stroke="black" d="M16244.01,-1144.9C16245.01,-1142.9 16262.01,-1098.1 16273.01,-1069.5"/>
<polygon fill="black" stroke="black" points="16276.44,-1070.38 16277.01,-1059.8 16269.97,-1067.71 16276.44,-1070.38"/>
</a>
</g>
</g>
<!-- has_measurable_sup₂ -->
<g id="node521" class="node">
<title>has_measurable_sup₂</title>
<g id="a_node521"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_measurable_sup₂" xlink:title="has_measurable_sup₂">
<polygon fill="none" stroke="black" points="14595.01,-1464 14405.01,-1464 14405.01,-1433 14595.01,-1433 14595.01,-1464"/>
<text text-anchor="middle" x="14500.01" y="-1444.8" font-family="Courier,monospace" font-size="14.00">has_measurable_sup₂</text>
</a>
</g>
</g>
<!-- has_continuous_sup.has_measurable_sup₂&#45;&gt;has_measurable_sup₂ -->
<g id="edge1026" class="edge">
<title>has_continuous_sup.has_measurable_sup₂&#45;&gt;has_measurable_sup₂</title>
<g id="a_edge1026"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_sup.has_measurable_sup₂" xlink:title="has_continuous_sup.has_measurable_sup₂">
<path fill="none" stroke="black" d="M14431.01,-1548.9C14432.01,-1546.9 14465.01,-1500.5 14485.01,-1472"/>
<polygon fill="black" stroke="black" points="14487.8,-1474.16 14490.01,-1463.8 14481.82,-1470.52 14487.8,-1474.16"/>
</a>
</g>
</g>
<!-- separable_locally_compact_group.sigma_compact_space&#45;&gt;sigma_compact_space -->
<g id="edge1028" class="edge">
<title>separable_locally_compact_group.sigma_compact_space&#45;&gt;sigma_compact_space</title>
<g id="a_edge1028"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/separable_locally_compact_group.sigma_compact_space" xlink:title="separable_locally_compact_group.sigma_compact_space">
<path fill="none" stroke="black" d="M16315.01,-1144.9C16314.01,-1142.9 16299.01,-1098.1 16290.01,-1069.5"/>
<polygon fill="black" stroke="black" points="16293.31,-1068.32 16287.01,-1059.8 16286.63,-1070.39 16293.31,-1068.32"/>
</a>
</g>
</g>
<!-- measure_theory.is_locally_finite_measure -->
<g id="node527" class="node">
<title>measure_theory.is_locally_finite_measure</title>
<g id="a_node527"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.is_locally_finite_measure" xlink:title="measure_theory.is_locally_finite_measure">
<polygon fill="none" stroke="black" points="16827.01,-1060 16477.01,-1060 16477.01,-1029 16827.01,-1029 16827.01,-1060"/>
<text text-anchor="middle" x="16652.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">measure_theory.is_locally_finite_measure</text>
</a>
</g>
</g>
<!-- measure_theory.measure.is_locally_finite_measure_of_is_haar_measure&#45;&gt;measure_theory.is_locally_finite_measure -->
<g id="edge1420" class="edge">
<title>measure_theory.measure.is_locally_finite_measure_of_is_haar_measure&#45;&gt;measure_theory.is_locally_finite_measure</title>
<g id="a_edge1420"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_locally_finite_measure_of_is_haar_measure" xlink:title="measure_theory.measure.is_locally_finite_measure_of_is_haar_measure">
<path fill="none" stroke="black" d="M16498.01,-1144.9C16498.01,-1143.9 16502.01,-1136.1 16507.01,-1131.5 16538.01,-1102.5 16580.01,-1079 16611.01,-1064"/>
<polygon fill="black" stroke="black" points="16612.57,-1067.14 16620.01,-1059.6 16609.49,-1060.85 16612.57,-1067.14"/>
</a>
</g>
</g>
<!-- measure_theory.measure.is_locally_finite_measure_of_is_add_haar_measure&#45;&gt;measure_theory.is_locally_finite_measure -->
<g id="edge1421" class="edge">
<title>measure_theory.measure.is_locally_finite_measure_of_is_add_haar_measure&#45;&gt;measure_theory.is_locally_finite_measure</title>
<g id="a_edge1421"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.is_locally_finite_measure_of_is_add_haar_measure" xlink:title="measure_theory.measure.is_locally_finite_measure_of_is_add_haar_measure">
<path fill="none" stroke="black" d="M16480.01,-1144.9C16480.01,-1143.9 16484.01,-1136 16489.01,-1131.5 16523.01,-1100.9 16570.01,-1077.8 16605.01,-1063.4"/>
<polygon fill="black" stroke="black" points="16606.23,-1066.69 16614.01,-1059.5 16603.45,-1060.26 16606.23,-1066.69"/>
</a>
</g>
</g>
<!-- is_order_connected -->
<g id="node320" class="node">
<title>is_order_connected</title>
<g id="a_node320"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_order_connected" xlink:title="is_order_connected">
<polygon fill="none" stroke="black" points="17609.51,-2171 17444.51,-2171 17444.51,-2140 17609.51,-2140 17609.51,-2171"/>
<text text-anchor="middle" x="17527.01" y="-2151.8" font-family="Courier,monospace" font-size="14.00">is_order_connected</text>
</a>
</g>
</g>
<!-- is_strict_total_order&#39; -->
<g id="node321" class="node">
<title>is_strict_total_order&#39;</title>
<g id="a_node321"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_strict_total_order'" xlink:title="is_strict_total_order&#39;">
<polygon fill="none" stroke="black" points="17720.51,-2272 17521.51,-2272 17521.51,-2241 17720.51,-2241 17720.51,-2272"/>
<text text-anchor="middle" x="17621.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">is_strict_total_order&#39;</text>
</a>
</g>
</g>
<!-- is_strict_total_order&#39;&#45;&gt;is_order_connected -->
<g id="edge606" class="edge">
<title>is_strict_total_order&#39;&#45;&gt;is_order_connected</title>
<g id="a_edge606"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_order_connected_of_is_strict_total_order'" xlink:title="is_order_connected_of_is_strict_total_order&#39;">
<path fill="none" stroke="black" d="M17608.01,-2242.2C17592.01,-2225.6 17565.01,-2197.5 17547.01,-2178.1"/>
<polygon fill="black" stroke="black" points="17549.4,-2175.52 17540.01,-2170.6 17544.28,-2180.3 17549.4,-2175.52"/>
</a>
</g>
</g>
<!-- is_extensional -->
<g id="node322" class="node">
<title>is_extensional</title>
<g id="a_node322"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_extensional" xlink:title="is_extensional">
<polygon fill="none" stroke="black" points="17758.01,-2171 17626.01,-2171 17626.01,-2140 17758.01,-2140 17758.01,-2171"/>
<text text-anchor="middle" x="17692.01" y="-2151.8" font-family="Courier,monospace" font-size="14.00">is_extensional</text>
</a>
</g>
</g>
<!-- is_strict_total_order&#39;&#45;&gt;is_extensional -->
<g id="edge607" class="edge">
<title>is_strict_total_order&#39;&#45;&gt;is_extensional</title>
<g id="a_edge607"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_extensional_of_is_strict_total_order'" xlink:title="is_extensional_of_is_strict_total_order&#39;">
<path fill="none" stroke="black" d="M17631.01,-2242.2C17643.01,-2225.8 17662.01,-2198.2 17676.01,-2178.9"/>
<polygon fill="black" stroke="black" points="17678.99,-2180.75 17682.01,-2170.6 17673.32,-2176.65 17678.99,-2180.75"/>
</a>
</g>
</g>
<!-- is_strict_total_order -->
<g id="node323" class="node">
<title>is_strict_total_order</title>
<g id="a_node323"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_strict_total_order" xlink:title="is_strict_total_order">
<polygon fill="none" stroke="black" points="17345.01,-2171 17155.01,-2171 17155.01,-2140 17345.01,-2140 17345.01,-2171"/>
<text text-anchor="middle" x="17250.01" y="-2151.8" font-family="Courier,monospace" font-size="14.00">is_strict_total_order</text>
</a>
</g>
</g>
<!-- is_strict_total_order&#39;&#45;&gt;is_strict_total_order -->
<g id="edge608" class="edge">
<title>is_strict_total_order&#39;&#45;&gt;is_strict_total_order</title>
<g id="a_edge608"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_strict_total_order_of_is_strict_total_order'" xlink:title="is_strict_total_order_of_is_strict_total_order&#39;">
<path fill="none" stroke="black" d="M17570.01,-2242.4C17503.01,-2224.4 17383.01,-2192.5 17311.01,-2173.2"/>
<polygon fill="black" stroke="black" points="17311.57,-2169.73 17301.01,-2170.6 17309.81,-2176.5 17311.57,-2169.73"/>
</a>
</g>
</g>
<!-- is_trichotomous -->
<g id="node324" class="node">
<title>is_trichotomous</title>
<g id="a_node324"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_trichotomous" xlink:title="is_trichotomous">
<polygon fill="none" stroke="black" points="17487.01,-2071 17347.01,-2071 17347.01,-2040 17487.01,-2040 17487.01,-2071"/>
<text text-anchor="middle" x="17417.01" y="-2051.8" font-family="Courier,monospace" font-size="14.00">is_trichotomous</text>
</a>
</g>
</g>
<!-- is_strict_total_order&#39;&#45;&gt;is_trichotomous -->
<g id="edge609" class="edge">
<title>is_strict_total_order&#39;&#45;&gt;is_trichotomous</title>
<g id="a_edge609"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_strict_total_order'.to_is_trichotomous" xlink:title="is_strict_total_order&#39;.to_is_trichotomous">
<path fill="none" stroke="black" d="M17557.01,-2242.4C17517.01,-2230.4 17466.01,-2208.6 17437.01,-2170.5 17417.01,-2144.3 17414.01,-2104.7 17415.01,-2079.7"/>
<polygon fill="black" stroke="black" points="17418.51,-2079.9 17416.01,-2069.6 17411.55,-2079.21 17418.51,-2079.9"/>
</a>
</g>
</g>
<!-- is_strict_order -->
<g id="node325" class="node">
<title>is_strict_order</title>
<g id="a_node325"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_strict_order" xlink:title="is_strict_order">
<polygon fill="none" stroke="black" points="17192.01,-1970 17052.01,-1970 17052.01,-1939 17192.01,-1939 17192.01,-1970"/>
<text text-anchor="middle" x="17122.01" y="-1950.8" font-family="Courier,monospace" font-size="14.00">is_strict_order</text>
</a>
</g>
</g>
<!-- is_strict_total_order&#39;&#45;&gt;is_strict_order -->
<g id="edge610" class="edge">
<title>is_strict_total_order&#39;&#45;&gt;is_strict_order</title>
<g id="a_edge610"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_strict_total_order'.to_is_strict_order" xlink:title="is_strict_total_order&#39;.to_is_strict_order">
<path fill="none" stroke="black" d="M17523.01,-2244.6C17392.01,-2228.4 17172.01,-2197.6 17147.01,-2170.5 17097.01,-2117.7 17108.01,-2022.7 17117.01,-1978.6"/>
<polygon fill="black" stroke="black" points="17120.48,-1979.09 17119.01,-1968.6 17113.62,-1977.72 17120.48,-1979.09"/>
</a>
</g>
</g>
<!-- is_strict_total_order&#45;&gt;is_trichotomous -->
<g id="edge611" class="edge">
<title>is_strict_total_order&#45;&gt;is_trichotomous</title>
<g id="a_edge611"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_strict_total_order.to_is_trichotomous" xlink:title="is_strict_total_order.to_is_trichotomous">
<path fill="none" stroke="black" d="M17273.01,-2141.4C17302.01,-2124.2 17353.01,-2094.2 17385.01,-2074.7"/>
<polygon fill="black" stroke="black" points="17387.04,-2077.58 17394.01,-2069.6 17383.59,-2071.49 17387.04,-2077.58"/>
</a>
</g>
</g>
<!-- is_strict_weak_order -->
<g id="node326" class="node">
<title>is_strict_weak_order</title>
<g id="a_node326"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_strict_weak_order" xlink:title="is_strict_weak_order">
<polygon fill="none" stroke="black" points="17331.01,-2071 17149.01,-2071 17149.01,-2040 17331.01,-2040 17331.01,-2071"/>
<text text-anchor="middle" x="17240.01" y="-2051.8" font-family="Courier,monospace" font-size="14.00">is_strict_weak_order</text>
</a>
</g>
</g>
<!-- is_strict_total_order&#45;&gt;is_strict_weak_order -->
<g id="edge612" class="edge">
<title>is_strict_total_order&#45;&gt;is_strict_weak_order</title>
<g id="a_edge612"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_strict_total_order.to_is_strict_weak_order" xlink:title="is_strict_total_order.to_is_strict_weak_order">
<path fill="none" stroke="black" d="M17249.01,-2141.2C17247.01,-2125.3 17244.01,-2099 17242.01,-2079.7"/>
<polygon fill="black" stroke="black" points="17245.48,-2079.21 17241.01,-2069.6 17238.52,-2079.9 17245.48,-2079.21"/>
</a>
</g>
</g>
<!-- is_trans -->
<g id="node327" class="node">
<title>is_trans</title>
<g id="a_node327"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_trans" xlink:title="is_trans">
<polygon fill="none" stroke="black" points="17114.51,-1868 17033.51,-1868 17033.51,-1837 17114.51,-1837 17114.51,-1868"/>
<text text-anchor="middle" x="17074.01" y="-1848.8" font-family="Courier,monospace" font-size="14.00">is_trans</text>
</a>
</g>
</g>
<!-- is_strict_order&#45;&gt;is_trans -->
<g id="edge613" class="edge">
<title>is_strict_order&#45;&gt;is_trans</title>
<g id="a_edge613"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_strict_order.to_is_trans" xlink:title="is_strict_order.to_is_trans">
<path fill="none" stroke="black" d="M17115.01,-1939.2C17107.01,-1923.1 17094.01,-1896 17085.01,-1876.7"/>
<polygon fill="black" stroke="black" points="17088.24,-1875.35 17081.01,-1867.6 17081.83,-1878.16 17088.24,-1875.35"/>
</a>
</g>
</g>
<!-- is_irrefl -->
<g id="node328" class="node">
<title>is_irrefl</title>
<g id="a_node328"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_irrefl" xlink:title="is_irrefl">
<polygon fill="none" stroke="black" points="17434.01,-1868 17344.01,-1868 17344.01,-1837 17434.01,-1837 17434.01,-1868"/>
<text text-anchor="middle" x="17389.01" y="-1848.8" font-family="Courier,monospace" font-size="14.00">is_irrefl</text>
</a>
</g>
</g>
<!-- is_strict_order&#45;&gt;is_irrefl -->
<g id="edge614" class="edge">
<title>is_strict_order&#45;&gt;is_irrefl</title>
<g id="a_edge614"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_strict_order.to_is_irrefl" xlink:title="is_strict_order.to_is_irrefl">
<path fill="none" stroke="black" d="M17159.01,-1939.4C17206.01,-1921.7 17290.01,-1890.5 17343.01,-1871.1"/>
<polygon fill="black" stroke="black" points="17343.96,-1874.49 17352.01,-1867.6 17341.43,-1867.96 17343.96,-1874.49"/>
</a>
</g>
</g>
<!-- is_strict_weak_order&#45;&gt;is_strict_order -->
<g id="edge615" class="edge">
<title>is_strict_weak_order&#45;&gt;is_strict_order</title>
<g id="a_edge615"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_strict_weak_order.to_is_strict_order" xlink:title="is_strict_weak_order.to_is_strict_order">
<path fill="none" stroke="black" d="M17224.01,-2040.2C17203.01,-2023.3 17169.01,-1994.5 17146.01,-1975.1"/>
<polygon fill="black" stroke="black" points="17147.98,-1972.19 17138.01,-1968.6 17143.57,-1977.62 17147.98,-1972.19"/>
</a>
</g>
</g>
<!-- is_incomp_trans -->
<g id="node329" class="node">
<title>is_incomp_trans</title>
<g id="a_node329"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_incomp_trans" xlink:title="is_incomp_trans">
<polygon fill="none" stroke="black" points="17348.01,-1970 17208.01,-1970 17208.01,-1939 17348.01,-1939 17348.01,-1970"/>
<text text-anchor="middle" x="17278.01" y="-1950.8" font-family="Courier,monospace" font-size="14.00">is_incomp_trans</text>
</a>
</g>
</g>
<!-- is_strict_weak_order&#45;&gt;is_incomp_trans -->
<g id="edge616" class="edge">
<title>is_strict_weak_order&#45;&gt;is_incomp_trans</title>
<g id="a_edge616"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_strict_weak_order.to_is_incomp_trans" xlink:title="is_strict_weak_order.to_is_incomp_trans">
<path fill="none" stroke="black" d="M17245.01,-2040.2C17251.01,-2024.2 17262.01,-1997.5 17269.01,-1978.2"/>
<polygon fill="black" stroke="black" points="17272.4,-1979.18 17273.01,-1968.6 17265.94,-1976.48 17272.4,-1979.18"/>
</a>
</g>
</g>
<!-- is_asymm_of_is_trans_of_is_irrefl -->
<g id="node330" class="node">
<title>is_asymm_of_is_trans_of_is_irrefl</title>
<g id="a_node330"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_asymm_of_is_trans_of_is_irrefl" xlink:title="is_asymm_of_is_trans_of_is_irrefl">
<ellipse fill="black" stroke="black" cx="17264.01" cy="-1751.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- is_trans&#45;&gt;is_asymm_of_is_trans_of_is_irrefl -->
<g id="edge617" class="edge">
<title>is_trans&#45;&gt;is_asymm_of_is_trans_of_is_irrefl</title>
<g id="a_edge617"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_asymm_of_is_trans_of_is_irrefl" xlink:title="is_asymm_of_is_trans_of_is_irrefl">
<path fill="none" stroke="black" d="M17100.01,-1838.4C17143.01,-1816 17227.01,-1772.3 17255.01,-1757.8"/>
<polygon fill="black" stroke="black" points="17256.84,-1760.79 17264.01,-1753 17253.54,-1754.62 17256.84,-1760.79"/>
</a>
</g>
</g>
<!-- is_irrefl&#45;&gt;is_asymm_of_is_trans_of_is_irrefl -->
<g id="edge618" class="edge">
<title>is_irrefl&#45;&gt;is_asymm_of_is_trans_of_is_irrefl</title>
<g id="a_edge618"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_asymm_of_is_trans_of_is_irrefl" xlink:title="is_asymm_of_is_trans_of_is_irrefl">
<path fill="none" stroke="black" d="M17372.01,-1838.4C17345.01,-1816.8 17292.01,-1775.1 17272.01,-1759.3"/>
<polygon fill="black" stroke="black" points="17274.04,-1756.44 17264.01,-1753 17269.7,-1761.94 17274.04,-1756.44"/>
</a>
</g>
</g>
<!-- is_asymm -->
<g id="node619" class="node">
<title>is_asymm</title>
<g id="a_node619"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_asymm" xlink:title="is_asymm">
<polygon fill="none" stroke="black" points="17304.51,-1667 17223.51,-1667 17223.51,-1636 17304.51,-1636 17304.51,-1667"/>
<text text-anchor="middle" x="17264.01" y="-1647.8" font-family="Courier,monospace" font-size="14.00">is_asymm</text>
</a>
</g>
</g>
<!-- is_asymm_of_is_trans_of_is_irrefl&#45;&gt;is_asymm -->
<g id="edge1230" class="edge">
<title>is_asymm_of_is_trans_of_is_irrefl&#45;&gt;is_asymm</title>
<g id="a_edge1230"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_asymm_of_is_trans_of_is_irrefl" xlink:title="is_asymm_of_is_trans_of_is_irrefl">
<path fill="none" stroke="black" d="M17264.01,-1750.9C17264.01,-1748.9 17264.01,-1704.5 17264.01,-1675.9"/>
<polygon fill="black" stroke="black" points="17267.51,-1675.8 17264.01,-1665.8 17260.51,-1675.8 17267.51,-1675.8"/>
</a>
</g>
</g>
<!-- non_unital_semi_normed_ring -->
<g id="node331" class="node">
<title>non_unital_semi_normed_ring</title>
<g id="a_node331"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_semi_normed_ring" xlink:title="non_unital_semi_normed_ring">
<polygon fill="none" stroke="black" points="7306.51,-2878 7065.51,-2878 7065.51,-2847 7306.51,-2847 7306.51,-2878"/>
<text text-anchor="middle" x="7186.01" y="-2858.8" font-family="Courier,monospace" font-size="14.00">non_unital_semi_normed_ring</text>
</a>
</g>
</g>
<!-- non_unital_semi_normed_ring&#45;&gt;has_norm -->
<g id="edge619" class="edge">
<title>non_unital_semi_normed_ring&#45;&gt;has_norm</title>
<g id="a_edge619"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_semi_normed_ring.to_has_norm" xlink:title="non_unital_semi_normed_ring.to_has_norm">
<path fill="none" stroke="black" d="M7183.71,-2848.5C7179.01,-2824.9 7166.21,-2776.1 7137.01,-2747.5 7113.31,-2724.3 7030.31,-2695 6975.51,-2677.4"/>
<polygon fill="black" stroke="black" points="6976.5,-2674.04 6965.91,-2674.4 6974.41,-2680.72 6976.5,-2674.04"/>
</a>
</g>
</g>
<!-- non_unital_semi_normed_ring&#45;&gt;pseudo_metric_space -->
<g id="edge620" class="edge">
<title>non_unital_semi_normed_ring&#45;&gt;pseudo_metric_space</title>
<g id="a_edge620"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_semi_normed_ring.to_pseudo_metric_space" xlink:title="non_unital_semi_normed_ring.to_pseudo_metric_space">
<path fill="none" stroke="black" d="M7150.21,-2848.4C7106.21,-2831.7 7029.51,-2802.4 6964.01,-2776.5 6878.71,-2742.8 6779.41,-2702.1 6724.31,-2679.5"/>
<polygon fill="black" stroke="black" points="6725.49,-2676.2 6714.91,-2675.6 6722.81,-2682.67 6725.49,-2676.2"/>
</a>
</g>
</g>
<!-- non_unital_semi_normed_ring&#45;&gt;semi_normed_group -->
<g id="edge621" class="edge">
<title>non_unital_semi_normed_ring&#45;&gt;semi_normed_group</title>
<g id="a_edge621"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_semi_normed_ring.to_semi_normed_group" xlink:title="non_unital_semi_normed_ring.to_semi_normed_group">
<path fill="none" stroke="black" d="M7167.51,-2848.4C7144.31,-2831.4 7104.41,-2802.1 7077.81,-2782.7"/>
<polygon fill="black" stroke="black" points="7079.83,-2779.84 7069.71,-2776.7 7075.67,-2785.46 7079.83,-2779.84"/>
</a>
</g>
</g>
<!-- non_unital_ring -->
<g id="node332" class="node">
<title>non_unital_ring</title>
<g id="a_node332"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_ring" xlink:title="non_unital_ring">
<polygon fill="none" stroke="black" points="7476.01,-2778 7336.01,-2778 7336.01,-2747 7476.01,-2747 7476.01,-2778"/>
<text text-anchor="middle" x="7406.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">non_unital_ring</text>
</a>
</g>
</g>
<!-- non_unital_semi_normed_ring&#45;&gt;non_unital_ring -->
<g id="edge622" class="edge">
<title>non_unital_semi_normed_ring&#45;&gt;non_unital_ring</title>
<g id="a_edge622"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_semi_normed_ring.to_non_unital_ring" xlink:title="non_unital_semi_normed_ring.to_non_unital_ring">
<path fill="none" stroke="black" d="M7216.11,-2848.4C7255.21,-2830.9 7323.41,-2800.2 7366.51,-2780.8"/>
<polygon fill="black" stroke="black" points="7368.21,-2783.87 7375.91,-2776.6 7365.36,-2777.48 7368.21,-2783.87"/>
</a>
</g>
</g>
<!-- non_unital_ring&#45;&gt;non_unital_semiring -->
<g id="edge627" class="edge">
<title>non_unital_ring&#45;&gt;non_unital_semiring</title>
<g id="a_edge627"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_ring.to_non_unital_semiring" xlink:title="non_unital_ring.to_non_unital_semiring">
<path fill="none" stroke="black" d="M7423.91,-2747.4C7446.41,-2730.5 7484.91,-2701.4 7510.61,-2681.9"/>
<polygon fill="black" stroke="black" points="7513,-2684.49 7518.91,-2675.7 7508.81,-2678.88 7513,-2684.49"/>
</a>
</g>
</g>
<!-- non_unital_non_assoc_ring -->
<g id="node334" class="node">
<title>non_unital_non_assoc_ring</title>
<g id="a_node334"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_non_assoc_ring" xlink:title="non_unital_non_assoc_ring">
<polygon fill="none" stroke="black" points="8004.01,-2677 7780.01,-2677 7780.01,-2646 8004.01,-2646 8004.01,-2677"/>
<text text-anchor="middle" x="7892.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">non_unital_non_assoc_ring</text>
</a>
</g>
</g>
<!-- non_unital_ring&#45;&gt;non_unital_non_assoc_ring -->
<g id="edge628" class="edge">
<title>non_unital_ring&#45;&gt;non_unital_non_assoc_ring</title>
<g id="a_edge628"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_ring.to_non_unital_non_assoc_ring" xlink:title="non_unital_ring.to_non_unital_non_assoc_ring">
<path fill="none" stroke="black" d="M7472.31,-2747.5C7561.81,-2729.3 7720.81,-2696.9 7815.31,-2677.6"/>
<polygon fill="black" stroke="black" points="7816.28,-2680.98 7825.41,-2675.6 7814.92,-2674.11 7816.28,-2680.98"/>
</a>
</g>
</g>
<!-- non_unital_non_assoc_ring&#45;&gt;add_comm_group -->
<g id="edge638" class="edge">
<title>non_unital_non_assoc_ring&#45;&gt;add_comm_group</title>
<g id="a_edge638"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_non_assoc_ring.to_add_comm_group" xlink:title="non_unital_non_assoc_ring.to_add_comm_group">
<path fill="none" stroke="black" d="M8002.71,-2650.2C8151.31,-2636.5 8423.61,-2609.4 8666.51,-2574.5"/>
<polygon fill="black" stroke="black" points="8667.24,-2577.93 8676.61,-2573 8666.21,-2571.01 8667.24,-2577.93"/>
</a>
</g>
</g>
<!-- non_unital_non_assoc_ring&#45;&gt;non_unital_non_assoc_semiring -->
<g id="edge639" class="edge">
<title>non_unital_non_assoc_ring&#45;&gt;non_unital_non_assoc_semiring</title>
<g id="a_edge639"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_unital_non_assoc_ring.to_non_unital_non_assoc_semiring" xlink:title="non_unital_non_assoc_ring.to_non_unital_non_assoc_semiring">
<path fill="none" stroke="black" d="M7909.71,-2646.4C7931.71,-2629.5 7969.71,-2600.4 7995.11,-2580.9"/>
<polygon fill="black" stroke="black" points="7997.35,-2583.59 8003.11,-2574.7 7993.07,-2578.06 7997.35,-2583.59"/>
</a>
</g>
</g>
<!-- add_cancel_comm_monoid&#45;&gt;add_comm_monoid -->
<g id="edge781" class="edge">
<title>add_cancel_comm_monoid&#45;&gt;add_comm_monoid</title>
<g id="a_edge781"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_cancel_comm_monoid.to_add_comm_monoid" xlink:title="add_cancel_comm_monoid.to_add_comm_monoid">
<path fill="none" stroke="black" d="M8268.61,-2444.4C8309.81,-2426.8 8381.91,-2395.9 8427.11,-2376.5"/>
<polygon fill="black" stroke="black" points="8428.55,-2379.7 8436.41,-2372.6 8425.84,-2373.24 8428.55,-2379.7"/>
</a>
</g>
</g>
<!-- add_left_cancel_monoid -->
<g id="node409" class="node">
<title>add_left_cancel_monoid</title>
<g id="a_node409"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_left_cancel_monoid" xlink:title="add_left_cancel_monoid">
<polygon fill="none" stroke="black" points="8333.51,-2272 8134.51,-2272 8134.51,-2241 8333.51,-2241 8333.51,-2272"/>
<text text-anchor="middle" x="8234.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">add_left_cancel_monoid</text>
</a>
</g>
</g>
<!-- add_cancel_comm_monoid&#45;&gt;add_left_cancel_monoid -->
<g id="edge780" class="edge">
<title>add_cancel_comm_monoid&#45;&gt;add_left_cancel_monoid</title>
<g id="a_edge780"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_cancel_comm_monoid.to_add_left_cancel_monoid" xlink:title="add_cancel_comm_monoid.to_add_left_cancel_monoid">
<path fill="none" stroke="black" d="M8232.51,-2444.3C8227.41,-2427.5 8219.11,-2398.3 8216.01,-2372.5 8212.21,-2340.8 8220.01,-2304.4 8226.51,-2281.3"/>
<polygon fill="black" stroke="black" points="8229.87,-2282.28 8229.41,-2271.7 8223.17,-2280.26 8229.87,-2282.28"/>
</a>
</g>
</g>
<!-- add_cancel_monoid -->
<g id="node410" class="node">
<title>add_cancel_monoid</title>
<g id="a_node410"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_cancel_monoid" xlink:title="add_cancel_monoid">
<polygon fill="none" stroke="black" points="8381.51,-2374 8224.51,-2374 8224.51,-2343 8381.51,-2343 8381.51,-2374"/>
<text text-anchor="middle" x="8303.01" y="-2354.8" font-family="Courier,monospace" font-size="14.00">add_cancel_monoid</text>
</a>
</g>
</g>
<!-- add_cancel_comm_monoid&#45;&gt;add_cancel_monoid -->
<g id="edge782" class="edge">
<title>add_cancel_comm_monoid&#45;&gt;add_cancel_monoid</title>
<g id="a_edge782"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_cancel_comm_monoid.to_cancel_add_monoid" xlink:title="add_cancel_comm_monoid.to_cancel_add_monoid">
<path fill="none" stroke="black" d="M8246.21,-2444.2C8257.11,-2427.9 8275.41,-2400.5 8288.21,-2381.1"/>
<polygon fill="black" stroke="black" points="8291.25,-2382.85 8293.91,-2372.6 8285.44,-2378.96 8291.25,-2382.85"/>
</a>
</g>
</g>
<!-- add_monoid -->
<g id="node441" class="node">
<title>add_monoid</title>
<g id="a_node441"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_monoid" xlink:title="add_monoid">
<polygon fill="none" stroke="black" points="8762.01,-2171 8664.01,-2171 8664.01,-2140 8762.01,-2140 8762.01,-2171"/>
<text text-anchor="middle" x="8713.01" y="-2151.8" font-family="Courier,monospace" font-size="14.00">add_monoid</text>
</a>
</g>
</g>
<!-- add_comm_monoid&#45;&gt;add_monoid -->
<g id="edge837" class="edge">
<title>add_comm_monoid&#45;&gt;add_monoid</title>
<g id="a_edge837"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_monoid.to_add_monoid" xlink:title="add_comm_monoid.to_add_monoid">
<path fill="none" stroke="black" d="M8492.71,-2343.4C8520.21,-2327.7 8565.71,-2300.3 8601.01,-2271.5 8636.91,-2242.3 8673.41,-2202.7 8694.61,-2178.5"/>
<polygon fill="black" stroke="black" points="8697.48,-2180.54 8701.41,-2170.7 8692.2,-2175.94 8697.48,-2180.54"/>
</a>
</g>
</g>
<!-- add_comm_semigroup -->
<g id="node446" class="node">
<title>add_comm_semigroup</title>
<g id="a_node446"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_semigroup" xlink:title="add_comm_semigroup">
<polygon fill="none" stroke="black" points="8400.51,-2171 8235.51,-2171 8235.51,-2140 8400.51,-2140 8400.51,-2171"/>
<text text-anchor="middle" x="8318.01" y="-2151.8" font-family="Courier,monospace" font-size="14.00">add_comm_semigroup</text>
</a>
</g>
</g>
<!-- add_comm_monoid&#45;&gt;add_comm_semigroup -->
<g id="edge838" class="edge">
<title>add_comm_monoid&#45;&gt;add_comm_semigroup</title>
<g id="a_edge838"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_monoid.to_add_comm_semigroup" xlink:title="add_comm_monoid.to_add_comm_semigroup">
<path fill="none" stroke="black" d="M8450.71,-2343.2C8431.51,-2327.4 8400.51,-2299.9 8379.01,-2271.5 8356.91,-2242.3 8338.21,-2203.9 8327.61,-2179.9"/>
<polygon fill="black" stroke="black" points="8330.72,-2178.27 8323.51,-2170.5 8324.3,-2181.07 8330.72,-2178.27"/>
</a>
</g>
</g>
<!-- has_neg_part -->
<g id="node460" class="node">
<title>has_neg_part</title>
<g id="a_node460"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_neg_part" xlink:title="has_neg_part">
<polygon fill="none" stroke="black" points="10650.51,-2272 10535.51,-2272 10535.51,-2241 10650.51,-2241 10650.51,-2272"/>
<text text-anchor="middle" x="10593.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">has_neg_part</text>
</a>
</g>
</g>
<!-- lattice_ordered_comm_group.has_zero_lattice_has_neg_part&#45;&gt;has_neg_part -->
<g id="edge888" class="edge">
<title>lattice_ordered_comm_group.has_zero_lattice_has_neg_part&#45;&gt;has_neg_part</title>
<g id="a_edge888"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_zero_lattice_has_neg_part" xlink:title="lattice_ordered_comm_group.has_zero_lattice_has_neg_part">
<path fill="none" stroke="black" d="M10584.01,-2356.9C10584.01,-2354.9 10588.01,-2310.5 10591.01,-2281.9"/>
<polygon fill="black" stroke="black" points="10594.51,-2282.1 10592.01,-2271.8 10587.55,-2281.41 10594.51,-2282.1"/>
</a>
</g>
</g>
<!-- has_pos_part -->
<g id="node459" class="node">
<title>has_pos_part</title>
<g id="a_node459"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_pos_part" xlink:title="has_pos_part">
<polygon fill="none" stroke="black" points="10782.51,-2272 10667.51,-2272 10667.51,-2241 10782.51,-2241 10782.51,-2272"/>
<text text-anchor="middle" x="10725.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">has_pos_part</text>
</a>
</g>
</g>
<!-- lattice_ordered_comm_group.has_zero_lattice_has_pos_part&#45;&gt;has_pos_part -->
<g id="edge889" class="edge">
<title>lattice_ordered_comm_group.has_zero_lattice_has_pos_part&#45;&gt;has_pos_part</title>
<g id="a_edge889"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_zero_lattice_has_pos_part" xlink:title="lattice_ordered_comm_group.has_zero_lattice_has_pos_part">
<path fill="none" stroke="black" d="M10716.01,-2356.9C10716.01,-2354.9 10720.01,-2310.5 10723.01,-2281.9"/>
<polygon fill="black" stroke="black" points="10726.51,-2282.1 10724.01,-2271.8 10719.55,-2281.41 10726.51,-2282.1"/>
</a>
</g>
</g>
<!-- add_group&#45;&gt;add_cancel_monoid -->
<g id="edge890" class="edge">
<title>add_group&#45;&gt;add_cancel_monoid</title>
<g id="a_edge890"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_group.to_cancel_add_monoid" xlink:title="add_group.to_cancel_add_monoid">
<path fill="none" stroke="black" d="M8417.81,-2444.4C8395.01,-2427.5 8355.91,-2398.4 8329.81,-2378.9"/>
<polygon fill="black" stroke="black" points="8331.54,-2375.82 8321.41,-2372.7 8327.38,-2381.45 8331.54,-2375.82"/>
</a>
</g>
</g>
<!-- sub_neg_monoid -->
<g id="node466" class="node">
<title>sub_neg_monoid</title>
<g id="a_node466"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/sub_neg_monoid" xlink:title="sub_neg_monoid">
<polygon fill="none" stroke="black" points="8779.01,-2272 8647.01,-2272 8647.01,-2241 8779.01,-2241 8779.01,-2272"/>
<text text-anchor="middle" x="8713.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">sub_neg_monoid</text>
</a>
</g>
</g>
<!-- add_group&#45;&gt;sub_neg_monoid -->
<g id="edge891" class="edge">
<title>add_group&#45;&gt;sub_neg_monoid</title>
<g id="a_edge891"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_group.to_sub_neg_monoid" xlink:title="add_group.to_sub_neg_monoid">
<path fill="none" stroke="black" d="M8455.01,-2444.3C8503.21,-2409.5 8629.91,-2318 8685.91,-2277.6"/>
<polygon fill="black" stroke="black" points="8688.16,-2280.29 8694.21,-2271.6 8684.06,-2274.62 8688.16,-2280.29"/>
</a>
</g>
</g>
<!-- subtraction_monoid -->
<g id="node467" class="node">
<title>subtraction_monoid</title>
<g id="a_node467"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/subtraction_monoid" xlink:title="subtraction_monoid">
<polygon fill="none" stroke="black" points="8795.51,-2374 8630.51,-2374 8630.51,-2343 8795.51,-2343 8795.51,-2374"/>
<text text-anchor="middle" x="8713.01" y="-2354.8" font-family="Courier,monospace" font-size="14.00">subtraction_monoid</text>
</a>
</g>
</g>
<!-- add_group&#45;&gt;subtraction_monoid -->
<g id="edge892" class="edge">
<title>add_group&#45;&gt;subtraction_monoid</title>
<g id="a_edge892"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_group.to_division_add_monoid" xlink:title="add_group.to_division_add_monoid">
<path fill="none" stroke="black" d="M8473.91,-2444.4C8523.71,-2426.6 8611.21,-2395.4 8665.41,-2376"/>
<polygon fill="black" stroke="black" points="8666.83,-2379.21 8675.11,-2372.6 8664.52,-2372.6 8666.83,-2379.21"/>
</a>
</g>
</g>
<!-- subtraction_comm_monoid&#45;&gt;add_comm_monoid -->
<g id="edge893" class="edge">
<title>subtraction_comm_monoid&#45;&gt;add_comm_monoid</title>
<g id="a_edge893"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/subtraction_comm_monoid.to_add_comm_monoid" xlink:title="subtraction_comm_monoid.to_add_comm_monoid">
<path fill="none" stroke="black" d="M8581.91,-2444.4C8559.31,-2427.5 8520.51,-2398.4 8494.61,-2378.9"/>
<polygon fill="black" stroke="black" points="8496.42,-2375.88 8486.31,-2372.7 8492.23,-2381.49 8496.42,-2375.88"/>
</a>
</g>
</g>
<!-- subtraction_comm_monoid&#45;&gt;subtraction_monoid -->
<g id="edge894" class="edge">
<title>subtraction_comm_monoid&#45;&gt;subtraction_monoid</title>
<g id="a_edge894"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/subtraction_comm_monoid.to_subtraction_monoid" xlink:title="subtraction_comm_monoid.to_subtraction_monoid">
<path fill="none" stroke="black" d="M8615.71,-2444.2C8634.91,-2427.4 8667.71,-2398.7 8689.81,-2379.3"/>
<polygon fill="black" stroke="black" points="8692.23,-2381.84 8697.41,-2372.6 8687.6,-2376.59 8692.23,-2381.84"/>
</a>
</g>
</g>
<!-- semi_normed_ring&#45;&gt;has_norm -->
<g id="edge640" class="edge">
<title>semi_normed_ring&#45;&gt;has_norm</title>
<g id="a_edge640"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semi_normed_ring.to_has_norm" xlink:title="semi_normed_ring.to_has_norm">
<path fill="none" stroke="black" d="M7281.11,-2949.1C7300.21,-2927.1 7331.51,-2883.2 7313.01,-2848.5 7294.01,-2812.9 7198.01,-2765.7 7162.01,-2747.5 7100.31,-2716.3 7024.41,-2691 6975.41,-2676.3"/>
<polygon fill="black" stroke="black" points="6976.3,-2672.91 6965.71,-2673.4 6974.29,-2679.62 6976.3,-2672.91"/>
</a>
</g>
</g>
<!-- semi_normed_ring&#45;&gt;pseudo_metric_space -->
<g id="edge641" class="edge">
<title>semi_normed_ring&#45;&gt;pseudo_metric_space</title>
<g id="a_edge641"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semi_normed_ring.to_pseudo_metric_space" xlink:title="semi_normed_ring.to_pseudo_metric_space">
<path fill="none" stroke="black" d="M7225.41,-2949.4C7181.91,-2934.7 7113.01,-2908.9 7058.01,-2877.5 7039.61,-2867 7037.81,-2860.1 7020.01,-2848.5 7005.71,-2839.1 6798.81,-2725.9 6715.91,-2680.6"/>
<polygon fill="black" stroke="black" points="6717.36,-2677.4 6706.91,-2675.6 6713.96,-2683.52 6717.36,-2677.4"/>
</a>
</g>
</g>
<!-- semi_normed_ring&#45;&gt;non_unital_semi_normed_ring -->
<g id="edge642" class="edge">
<title>semi_normed_ring&#45;&gt;non_unital_semi_normed_ring</title>
<g id="a_edge642"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semi_normed_ring.to_non_unital_semi_normed_ring" xlink:title="semi_normed_ring.to_non_unital_semi_normed_ring">
<path fill="none" stroke="black" d="M7256.61,-2949.2C7242.91,-2932.7 7219.71,-2904.7 7203.71,-2885.4"/>
<polygon fill="black" stroke="black" points="7206.36,-2883.11 7197.31,-2877.6 7200.95,-2887.55 7206.36,-2883.11"/>
</a>
</g>
</g>
<!-- semi_normed_ring&#45;&gt;ring -->
<g id="edge643" class="edge">
<title>semi_normed_ring&#45;&gt;ring</title>
<g id="a_edge643"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semi_normed_ring.to_ring" xlink:title="semi_normed_ring.to_ring">
<path fill="none" stroke="black" d="M7341.71,-2953.8C7508.41,-2933.1 7908.91,-2883.2 8028.61,-2868.3"/>
<polygon fill="black" stroke="black" points="8029.24,-2871.75 8038.71,-2867 8028.35,-2864.81 8029.24,-2871.75"/>
</a>
</g>
</g>
<!-- ring&#45;&gt;monoid -->
<g id="edge644" class="edge">
<title>ring&#45;&gt;monoid</title>
<g id="a_edge644"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ring.to_monoid" xlink:title="ring.to_monoid">
<path fill="none" stroke="black" d="M8087.11,-2856.9C8188.91,-2835.2 8579.61,-2752.3 8606.01,-2747.5 8709.71,-2728.6 9006.31,-2755.5 9075.01,-2675.5 9103.81,-2641.9 9032.61,-2606.2 9022.01,-2574.5 9012.01,-2544.5 9014.01,-2507.7 9017.01,-2484"/>
<polygon fill="black" stroke="black" points="9020.52,-2484.18 9018.41,-2473.8 9013.59,-2483.23 9020.52,-2484.18"/>
</a>
</g>
</g>
<!-- ring&#45;&gt;semiring -->
<g id="edge645" class="edge">
<title>ring&#45;&gt;semiring</title>
<g id="a_edge645"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ring.to_semiring" xlink:title="ring.to_semiring">
<path fill="none" stroke="black" d="M8087.41,-2857.9C8176.01,-2843.1 8482.51,-2792 8604.91,-2771.5"/>
<polygon fill="black" stroke="black" points="8605.92,-2774.88 8615.21,-2769.8 8604.78,-2767.98 8605.92,-2774.88"/>
</a>
</g>
</g>
<!-- ring&#45;&gt;non_unital_ring -->
<g id="edge646" class="edge">
<title>ring&#45;&gt;non_unital_ring</title>
<g id="a_edge646"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ring.to_non_unital_ring" xlink:title="ring.to_non_unital_ring">
<path fill="none" stroke="black" d="M8038.91,-2858.5C7960.01,-2847.1 7702.01,-2809.7 7489.01,-2776.5 7487.71,-2776.3 7486.51,-2776.1 7485.21,-2775.9"/>
<polygon fill="black" stroke="black" points="7485.74,-2772.44 7475.31,-2774.3 7484.63,-2779.35 7485.74,-2772.44"/>
</a>
</g>
</g>
<!-- lie_ring -->
<g id="node344" class="node">
<title>lie_ring</title>
<g id="a_node344"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lie_ring" xlink:title="lie_ring">
<polygon fill="none" stroke="black" points="8368.51,-2778 8287.51,-2778 8287.51,-2747 8368.51,-2747 8368.51,-2778"/>
<text text-anchor="middle" x="8328.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">lie_ring</text>
</a>
</g>
</g>
<!-- ring&#45;&gt;lie_ring -->
<g id="edge647" class="edge">
<title>ring&#45;&gt;lie_ring</title>
<g id="a_edge647"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lie_ring.of_associative_ring" xlink:title="lie_ring.of_associative_ring">
<path fill="none" stroke="black" d="M8087.51,-2852.9C8131.71,-2836.3 8225.51,-2801.3 8282.01,-2780.2"/>
<polygon fill="black" stroke="black" points="8283.4,-2783.42 8291.51,-2776.6 8280.92,-2776.87 8283.4,-2783.42"/>
</a>
</g>
</g>
<!-- has_bracket -->
<g id="node345" class="node">
<title>has_bracket</title>
<g id="a_node345"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_bracket" xlink:title="has_bracket">
<polygon fill="none" stroke="black" points="8346.01,-2677 8240.01,-2677 8240.01,-2646 8346.01,-2646 8346.01,-2677"/>
<text text-anchor="middle" x="8293.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">has_bracket</text>
</a>
</g>
</g>
<!-- ring&#45;&gt;has_bracket -->
<g id="edge648" class="edge">
<title>ring&#45;&gt;has_bracket</title>
<g id="a_edge648"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ring.has_bracket" xlink:title="ring.has_bracket">
<path fill="none" stroke="black" d="M8038.91,-2860.6C7960.41,-2855.1 7720.91,-2831.2 7792.01,-2747.5 7854.11,-2674.4 8117.31,-2692.8 8230.21,-2675.4"/>
<polygon fill="black" stroke="black" points="8231.03,-2678.81 8240.31,-2673.7 8229.87,-2671.91 8231.03,-2678.81"/>
</a>
</g>
</g>
<!-- ring&#45;&gt;distrib -->
<g id="edge649" class="edge">
<title>ring&#45;&gt;distrib</title>
<g id="a_edge649"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ring.to_distrib" xlink:title="ring.to_distrib">
<path fill="none" stroke="black" d="M8038.91,-2862.4C7960.71,-2862.9 7708.41,-2857.6 7522.01,-2776.5 7519.91,-2775.6 7394.51,-2677.2 7393.01,-2675.5 7357.01,-2636.1 7343.11,-2625.7 7328.01,-2574.5 7324.41,-2562.1 7322.91,-2557.3 7328.01,-2545.5 7340.11,-2517.5 7366.41,-2494.5 7387.61,-2479.4"/>
<polygon fill="black" stroke="black" points="7389.77,-2482.16 7396.01,-2473.6 7385.8,-2476.4 7389.77,-2482.16"/>
</a>
</g>
</g>
<!-- add_comm_group_with_one -->
<g id="node347" class="node">
<title>add_comm_group_with_one</title>
<g id="a_node347"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_group_with_one" xlink:title="add_comm_group_with_one">
<polygon fill="none" stroke="black" points="8845.51,-2677 8638.51,-2677 8638.51,-2646 8845.51,-2646 8845.51,-2677"/>
<text text-anchor="middle" x="8742.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">add_comm_group_with_one</text>
</a>
</g>
</g>
<!-- ring&#45;&gt;add_comm_group_with_one -->
<g id="edge650" class="edge">
<title>ring&#45;&gt;add_comm_group_with_one</title>
<g id="a_edge650"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ring.to_add_comm_group_with_one" xlink:title="ring.to_add_comm_group_with_one">
<path fill="none" stroke="black" d="M8087.31,-2856.8C8144.21,-2844.6 8290.81,-2812 8411.01,-2776.5 8425.01,-2772.4 8605.21,-2709.7 8693.61,-2678.9"/>
<polygon fill="black" stroke="black" points="8694.96,-2682.14 8703.21,-2675.5 8692.62,-2675.54 8694.96,-2682.14"/>
</a>
</g>
</g>
<!-- non_assoc_ring -->
<g id="node348" class="node">
<title>non_assoc_ring</title>
<g id="a_node348"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_assoc_ring" xlink:title="non_assoc_ring">
<polygon fill="none" stroke="black" points="8114.01,-2778 7982.01,-2778 7982.01,-2747 8114.01,-2747 8114.01,-2778"/>
<text text-anchor="middle" x="8048.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">non_assoc_ring</text>
</a>
</g>
</g>
<!-- ring&#45;&gt;non_assoc_ring -->
<g id="edge651" class="edge">
<title>ring&#45;&gt;non_assoc_ring</title>
<g id="a_edge651"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ring.to_non_assoc_ring" xlink:title="ring.to_non_assoc_ring">
<path fill="none" stroke="black" d="M8060.91,-2848.2C8058.51,-2832.3 8054.51,-2806 8051.61,-2786.7"/>
<polygon fill="black" stroke="black" points="8055.05,-2785.98 8050.11,-2776.6 8048.12,-2787.01 8055.05,-2785.98"/>
</a>
</g>
</g>
<!-- lie_ring&#45;&gt;add_comm_group -->
<g id="edge652" class="edge">
<title>lie_ring&#45;&gt;add_comm_group</title>
<g id="a_edge652"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lie_ring.to_add_comm_group" xlink:title="lie_ring.to_add_comm_group">
<path fill="none" stroke="black" d="M8332.41,-2747.3C8341.01,-2723.1 8362.31,-2672.7 8398.01,-2646.5 8419.71,-2630.6 8572.61,-2596.4 8667.11,-2576.5"/>
<polygon fill="black" stroke="black" points="8667.87,-2579.92 8676.91,-2574.4 8666.4,-2573.07 8667.87,-2579.92"/>
</a>
</g>
</g>
<!-- lie_ring&#45;&gt;has_bracket -->
<g id="edge653" class="edge">
<title>lie_ring&#45;&gt;has_bracket</title>
<g id="a_edge653"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lie_ring.to_has_bracket" xlink:title="lie_ring.to_has_bracket">
<path fill="none" stroke="black" d="M8323.11,-2747.2C8317.51,-2731.2 8308.01,-2704.5 8301.21,-2685.2"/>
<polygon fill="black" stroke="black" points="8304.45,-2683.86 8297.81,-2675.6 8297.85,-2686.19 8304.45,-2683.86"/>
</a>
</g>
</g>
<!-- has_add -->
<g id="node349" class="node">
<title>has_add</title>
<g id="a_node349"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_add" xlink:title="has_add">
<polygon fill="none" stroke="black" points="8749.51,-1970 8676.51,-1970 8676.51,-1939 8749.51,-1939 8749.51,-1970"/>
<text text-anchor="middle" x="8713.01" y="-1950.8" font-family="Courier,monospace" font-size="14.00">has_add</text>
</a>
</g>
</g>
<!-- distrib&#45;&gt;has_add -->
<g id="edge654" class="edge">
<title>distrib&#45;&gt;has_add</title>
<g id="a_edge654"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/distrib.to_has_add" xlink:title="distrib.to_has_add">
<path fill="none" stroke="black" d="M7442.71,-2444.4C7542.91,-2386.7 7929.61,-2164.7 7988.01,-2141.5 8277.41,-2026.4 8366.71,-2050.8 8667.01,-1968.5 8667.11,-1968.5 8667.21,-1968.4 8667.31,-1968.4"/>
<polygon fill="black" stroke="black" points="8668.24,-1971.78 8676.91,-1965.7 8666.34,-1965.04 8668.24,-1971.78"/>
</a>
</g>
</g>
<!-- distrib&#45;&gt;has_mul -->
<g id="edge655" class="edge">
<title>distrib&#45;&gt;has_mul</title>
<g id="a_edge655"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/distrib.to_has_mul" xlink:title="distrib.to_has_mul">
<path fill="none" stroke="black" d="M7455.01,-2446.2C7457.41,-2445.6 7459.71,-2445 7462.01,-2444.5 7672.21,-2396 7744.81,-2459.9 7942.01,-2372.5 7967.91,-2361 8027.01,-2308.7 8059.51,-2278.9"/>
<polygon fill="black" stroke="black" points="8062.17,-2281.22 8067.21,-2271.9 8057.46,-2276.04 8062.17,-2281.22"/>
</a>
</g>
</g>
<!-- add_comm_group_with_one&#45;&gt;add_comm_group -->
<g id="edge656" class="edge">
<title>add_comm_group_with_one&#45;&gt;add_comm_group</title>
<g id="a_edge656"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_group_with_one.to_add_comm_group" xlink:title="add_comm_group_with_one.to_add_comm_group">
<path fill="none" stroke="black" d="M8742.01,-2646.2C8742.01,-2630.3 8742.01,-2604 8742.01,-2584.7"/>
<polygon fill="black" stroke="black" points="8745.51,-2584.6 8742.01,-2574.6 8738.51,-2584.6 8745.51,-2584.6"/>
</a>
</g>
</g>
<!-- add_group_with_one -->
<g id="node351" class="node">
<title>add_group_with_one</title>
<g id="a_node351"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_group_with_one" xlink:title="add_group_with_one">
<polygon fill="none" stroke="black" points="8431.51,-2576 8266.51,-2576 8266.51,-2545 8431.51,-2545 8431.51,-2576"/>
<text text-anchor="middle" x="8349.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">add_group_with_one</text>
</a>
</g>
</g>
<!-- add_comm_group_with_one&#45;&gt;add_group_with_one -->
<g id="edge657" class="edge">
<title>add_comm_group_with_one&#45;&gt;add_group_with_one</title>
<g id="a_edge657"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_group_with_one.to_add_group_with_one" xlink:title="add_comm_group_with_one.to_add_group_with_one">
<path fill="none" stroke="black" d="M8688.21,-2646.4C8616.41,-2628.3 8489.41,-2596.4 8412.81,-2577.1"/>
<polygon fill="black" stroke="black" points="8413.36,-2573.63 8402.81,-2574.6 8411.67,-2580.42 8413.36,-2573.63"/>
</a>
</g>
</g>
<!-- non_assoc_ring&#45;&gt;non_assoc_semiring -->
<g id="edge658" class="edge">
<title>non_assoc_ring&#45;&gt;non_assoc_semiring</title>
<g id="a_edge658"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_assoc_ring.to_non_assoc_semiring" xlink:title="non_assoc_ring.to_non_assoc_semiring">
<path fill="none" stroke="black" d="M8060.91,-2747.2C8076.51,-2730.6 8103.01,-2702.5 8121.21,-2683.1"/>
<polygon fill="black" stroke="black" points="8123.95,-2685.3 8128.21,-2675.6 8118.83,-2680.52 8123.95,-2685.3"/>
</a>
</g>
</g>
<!-- non_assoc_ring&#45;&gt;non_unital_non_assoc_ring -->
<g id="edge659" class="edge">
<title>non_assoc_ring&#45;&gt;non_unital_non_assoc_ring</title>
<g id="a_edge659"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_assoc_ring.to_non_unital_non_assoc_ring" xlink:title="non_assoc_ring.to_non_unital_non_assoc_ring">
<path fill="none" stroke="black" d="M8026.61,-2747.4C7999.51,-2730.2 7952.61,-2700.5 7921.91,-2681"/>
<polygon fill="black" stroke="black" points="7923.73,-2678.01 7913.41,-2675.6 7919.98,-2683.92 7923.73,-2678.01"/>
</a>
</g>
</g>
<!-- non_assoc_ring&#45;&gt;add_group_with_one -->
<g id="edge660" class="edge">
<title>non_assoc_ring&#45;&gt;add_group_with_one</title>
<g id="a_edge660"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/non_assoc_ring.to_add_group_with_one" xlink:title="non_assoc_ring.to_add_group_with_one">
<path fill="none" stroke="black" d="M8043.51,-2747.3C8036.81,-2724 8027.21,-2676.1 8050.01,-2646.5 8075.41,-2613.4 8179.21,-2589.1 8257.41,-2575"/>
<polygon fill="black" stroke="black" points="8258.05,-2578.44 8267.31,-2573.3 8256.87,-2571.54 8258.05,-2578.44"/>
</a>
</g>
</g>
<!-- has_vadd -->
<g id="node465" class="node">
<title>has_vadd</title>
<g id="a_node465"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_vadd" xlink:title="has_vadd">
<polygon fill="none" stroke="black" points="8682.51,-1868 8601.51,-1868 8601.51,-1837 8682.51,-1837 8682.51,-1868"/>
<text text-anchor="middle" x="8642.01" y="-1848.8" font-family="Courier,monospace" font-size="14.00">has_vadd</text>
</a>
</g>
</g>
<!-- has_add&#45;&gt;has_vadd -->
<g id="edge886" class="edge">
<title>has_add&#45;&gt;has_vadd</title>
<g id="a_edge886"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_add.to_has_vadd" xlink:title="has_add.to_has_vadd">
<path fill="none" stroke="black" d="M8703.11,-1939.2C8691.41,-1922.8 8671.61,-1895.2 8657.71,-1875.9"/>
<polygon fill="black" stroke="black" points="8660.46,-1873.72 8651.81,-1867.6 8654.76,-1877.78 8660.46,-1873.72"/>
</a>
</g>
</g>
<!-- has_mul&#45;&gt;has_smul -->
<g id="edge899" class="edge">
<title>has_mul&#45;&gt;has_smul</title>
<g id="a_edge899"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_mul.to_has_smul" xlink:title="has_mul.to_has_smul">
<path fill="none" stroke="black" d="M8045.81,-2244.3C8042.91,-2243.6 8039.91,-2243 8037.01,-2242.5 7834.11,-2210.1 643,-2261.5 643,-2056 643,-2056 643,-2056 643,-1145 643,-1055.7 542.05,-992.31 483.59,-963.11"/>
<polygon fill="black" stroke="black" points="484.78,-959.79 474.25,-958.55 481.7,-966.08 484.78,-959.79"/>
</a>
</g>
</g>
<!-- add_group_with_one&#45;&gt;add_group -->
<g id="edge900" class="edge">
<title>add_group_with_one&#45;&gt;add_group</title>
<g id="a_edge900"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_group_with_one.to_add_group" xlink:title="add_group_with_one.to_add_group">
<path fill="none" stroke="black" d="M8361.11,-2545.2C8375.61,-2528.7 8400.21,-2500.7 8417.21,-2481.4"/>
<polygon fill="black" stroke="black" points="8420.08,-2483.44 8424.01,-2473.6 8414.8,-2478.84 8420.08,-2483.44"/>
</a>
</g>
</g>
<!-- add_group_with_one&#45;&gt;add_monoid_with_one -->
<g id="edge901" class="edge">
<title>add_group_with_one&#45;&gt;add_monoid_with_one</title>
<g id="a_edge901"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_group_with_one.to_add_monoid_with_one" xlink:title="add_group_with_one.to_add_monoid_with_one">
<path fill="none" stroke="black" d="M8430.61,-2549.2C8588.11,-2530 8920.41,-2488.1 8941.01,-2473.5 8971.81,-2451.7 8988.01,-2409.3 8995.51,-2382.6"/>
<polygon fill="black" stroke="black" points="8998.98,-2383.16 8998.11,-2372.6 8992.21,-2381.4 8998.98,-2383.16"/>
</a>
</g>
</g>
<!-- has_int_cast -->
<g id="node471" class="node">
<title>has_int_cast</title>
<g id="a_node471"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_int_cast" xlink:title="has_int_cast">
<polygon fill="none" stroke="black" points="8083.51,-2475 7968.51,-2475 7968.51,-2444 8083.51,-2444 8083.51,-2475"/>
<text text-anchor="middle" x="8026.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">has_int_cast</text>
</a>
</g>
</g>
<!-- add_group_with_one&#45;&gt;has_int_cast -->
<g id="edge902" class="edge">
<title>add_group_with_one&#45;&gt;has_int_cast</title>
<g id="a_edge902"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_group_with_one.to_has_int_cast" xlink:title="add_group_with_one.to_has_int_cast">
<path fill="none" stroke="black" d="M8304.81,-2545.4C8246.21,-2527.5 8143.11,-2495.9 8080.01,-2476.5"/>
<polygon fill="black" stroke="black" points="8080.8,-2473.08 8070.21,-2473.6 8078.81,-2479.79 8080.8,-2473.08"/>
</a>
</g>
</g>
<!-- nonempty&#45;&gt;category_theory.mono -->
<g id="edge678" class="edge">
<title>nonempty&#45;&gt;category_theory.mono</title>
<g id="a_edge678"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.wide_equalizer.ι_mono" xlink:title="category_theory.limits.wide_equalizer.ι_mono">
<path fill="none" stroke="black" d="M11076.01,-1040.6C11036.01,-1037.4 10971.01,-1032.7 10915.01,-1030.5 10893.01,-1029.6 4892.31,-956.57 4040.21,-946.2"/>
<polygon fill="black" stroke="black" points="4040.15,-942.7 4030.11,-946.08 4040.07,-949.7 4040.15,-942.7"/>
</a>
</g>
</g>
<!-- nonempty&#45;&gt;category_theory.epi -->
<g id="edge679" class="edge">
<title>nonempty&#45;&gt;category_theory.epi</title>
<g id="a_edge679"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.wide_coequalizer.π_epi" xlink:title="category_theory.limits.wide_coequalizer.π_epi">
<path fill="none" stroke="black" d="M11076.01,-1040.6C11036.01,-1037.3 10971.01,-1032.6 10915.01,-1030.5 10522.01,-1015.4 4226.91,-1033.1 3841.01,-958.48 3719.71,-935.02 3651.71,-959.49 3582.01,-857.48 3519.61,-766.1 3727.91,-723.71 3675.01,-626.48 3635.51,-553.92 3594.71,-558.54 3519.01,-525.48 3301.21,-430.32 3024.91,-376.48 2881.71,-353.11"/>
<polygon fill="black" stroke="black" points="2882.15,-349.63 2871.71,-351.48 2881.02,-356.54 2882.15,-349.63"/>
</a>
</g>
</g>
<!-- nonempty&#45;&gt;filter.ne_bot -->
<g id="edge680" class="edge">
<title>nonempty&#45;&gt;filter.ne_bot</title>
<g id="a_edge680"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.at_top_ne_bot" xlink:title="filter.at_top_ne_bot">
<path fill="none" stroke="black" d="M11158.01,-1042.8C11522.01,-1032.8 14224.01,-959.56 14700.01,-946.86"/>
<polygon fill="black" stroke="black" points="14700.11,-950.36 14710.01,-946.59 14699.92,-943.36 14700.11,-950.36"/>
</a>
</g>
</g>
<!-- nonempty&#45;&gt;filter.ne_bot -->
<g id="edge681" class="edge">
<title>nonempty&#45;&gt;filter.ne_bot</title>
<g id="a_edge681"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.at_bot_ne_bot" xlink:title="filter.at_bot_ne_bot">
<path fill="none" stroke="black" d="M11158.01,-1042.9C11522.01,-1033.2 14224.01,-960.03 14700.01,-946.97"/>
<polygon fill="black" stroke="black" points="14700.12,-950.47 14710.01,-946.69 14699.92,-943.47 14700.12,-950.47"/>
</a>
</g>
</g>
<!-- nonempty&#45;&gt;first_order.language.skolem₁_Structure -->
<g id="edge685" class="edge">
<title>nonempty&#45;&gt;first_order.language.skolem₁_Structure</title>
<g id="a_edge685"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.skolem₁_Structure" xlink:title="first_order.language.skolem₁_Structure">
<path fill="none" stroke="black" d="M11158.01,-1042.6C11224.01,-1038.5 11357.01,-1022.2 11447.01,-958.48 11449.01,-957.32 11450.01,-955.76 11451.01,-954.11"/>
<polygon fill="black" stroke="black" points="11454.23,-955.53 11456.01,-945.09 11448.1,-952.14 11454.23,-955.53"/>
</a>
</g>
</g>
<!-- category_theory.is_cofiltered -->
<g id="node365" class="node">
<title>category_theory.is_cofiltered</title>
<g id="a_node365"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_cofiltered" xlink:title="category_theory.is_cofiltered">
<polygon fill="none" stroke="black" points="11512.01,-857.98 11254.01,-857.98 11254.01,-826.98 11512.01,-826.98 11512.01,-857.98"/>
<text text-anchor="middle" x="11383.01" y="-838.78" font-family="Courier,monospace" font-size="14.00">category_theory.is_cofiltered</text>
</a>
</g>
</g>
<!-- nonempty&#45;&gt;category_theory.is_cofiltered -->
<g id="edge682" class="edge">
<title>nonempty&#45;&gt;category_theory.is_cofiltered</title>
<g id="a_edge682"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_cofiltered_of_semilattice_inf_nonempty" xlink:title="category_theory.is_cofiltered_of_semilattice_inf_nonempty">
<path fill="none" stroke="black" d="M11110.01,-1030.4C11100.01,-1007.3 11083.01,-959.7 11105.01,-929.48 11128.01,-898.59 11222.01,-874.23 11294.01,-859.54"/>
<polygon fill="black" stroke="black" points="11294.9,-862.93 11304.01,-857.53 11293.52,-856.07 11294.9,-862.93"/>
</a>
</g>
</g>
<!-- category_theory.is_cofiltered_of_directed_ge_nonempty -->
<g id="node366" class="node">
<title>category_theory.is_cofiltered_of_directed_ge_nonempty</title>
<g id="a_node366"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_cofiltered_of_directed_ge_nonempty" xlink:title="category_theory.is_cofiltered_of_directed_ge_nonempty">
<ellipse fill="black" stroke="black" cx="11438.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- nonempty&#45;&gt;category_theory.is_cofiltered_of_directed_ge_nonempty -->
<g id="edge683" class="edge">
<title>nonempty&#45;&gt;category_theory.is_cofiltered_of_directed_ge_nonempty</title>
<g id="a_edge683"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_cofiltered_of_directed_ge_nonempty" xlink:title="category_theory.is_cofiltered_of_directed_ge_nonempty">
<path fill="none" stroke="black" d="M11158.01,-1041.8C11221.01,-1036.6 11345.01,-1018.9 11429.01,-958.48 11431.01,-957.31 11432.01,-955.74 11433.01,-954.09"/>
<polygon fill="black" stroke="black" points="11436.22,-955.53 11438.01,-945.09 11430.1,-952.13 11436.22,-955.53"/>
</a>
</g>
</g>
<!-- category_theory.is_filtered_of_directed_le_nonempty -->
<g id="node367" class="node">
<title>category_theory.is_filtered_of_directed_le_nonempty</title>
<g id="a_node367"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_filtered_of_directed_le_nonempty" xlink:title="category_theory.is_filtered_of_directed_le_nonempty">
<ellipse fill="black" stroke="black" cx="11420.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- nonempty&#45;&gt;category_theory.is_filtered_of_directed_le_nonempty -->
<g id="edge684" class="edge">
<title>nonempty&#45;&gt;category_theory.is_filtered_of_directed_le_nonempty</title>
<g id="a_edge684"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_filtered_of_directed_le_nonempty" xlink:title="category_theory.is_filtered_of_directed_le_nonempty">
<path fill="none" stroke="black" d="M11158.01,-1040.3C11218.01,-1033.2 11332.01,-1013.2 11410.01,-958.48 11412.01,-957.23 11413.01,-955.55 11415.01,-953.81"/>
<polygon fill="black" stroke="black" points="11418.08,-955.5 11420.01,-945.08 11412.01,-952.02 11418.08,-955.5"/>
</a>
</g>
</g>
<!-- first_order.language.Theory.model -->
<g id="node368" class="node">
<title>first_order.language.Theory.model</title>
<g id="a_node368"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.Theory.model" xlink:title="first_order.language.Theory.model">
<polygon fill="none" stroke="black" points="11403.51,-958.98 11112.51,-958.98 11112.51,-927.98 11403.51,-927.98 11403.51,-958.98"/>
<text text-anchor="middle" x="11258.01" y="-939.78" font-family="Courier,monospace" font-size="14.00">first_order.language.Theory.model</text>
</a>
</g>
</g>
<!-- nonempty&#45;&gt;first_order.language.Theory.model -->
<g id="edge686" class="edge">
<title>nonempty&#45;&gt;first_order.language.Theory.model</title>
<g id="a_edge686"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.model_nonempty" xlink:title="first_order.language.model_nonempty">
<path fill="none" stroke="black" d="M11136.01,-1030.4C11161.01,-1013.4 11202.01,-984.11 11230.01,-964.64"/>
<polygon fill="black" stroke="black" points="11232.08,-967.47 11238.01,-958.69 11227.9,-961.85 11232.08,-967.47"/>
</a>
</g>
</g>
<!-- algebraic_geometry.Scheme.restrict.is_integral -->
<g id="node369" class="node">
<title>algebraic_geometry.Scheme.restrict.is_integral</title>
<g id="a_node369"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.Scheme.restrict.is_integral" xlink:title="algebraic_geometry.Scheme.restrict.is_integral">
<ellipse fill="black" stroke="black" cx="10944.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- nonempty&#45;&gt;algebraic_geometry.Scheme.restrict.is_integral -->
<g id="edge687" class="edge">
<title>nonempty&#45;&gt;algebraic_geometry.Scheme.restrict.is_integral</title>
<g id="a_edge687"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.Scheme.restrict.is_integral" xlink:title="algebraic_geometry.Scheme.restrict.is_integral">
<path fill="none" stroke="black" d="M11093.01,-1030.4C11055.01,-1008.2 10979.01,-965.07 10953.01,-950.18"/>
<polygon fill="black" stroke="black" points="10954.43,-946.96 10944.01,-945.02 10950.95,-953.03 10954.43,-946.96"/>
</a>
</g>
</g>
<!-- category_theory.is_filtered -->
<g id="node370" class="node">
<title>category_theory.is_filtered</title>
<g id="a_node370"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_filtered" xlink:title="category_theory.is_filtered">
<polygon fill="none" stroke="black" points="11239.51,-857.98 10998.51,-857.98 10998.51,-826.98 11239.51,-826.98 11239.51,-857.98"/>
<text text-anchor="middle" x="11119.01" y="-838.78" font-family="Courier,monospace" font-size="14.00">category_theory.is_filtered</text>
</a>
</g>
</g>
<!-- nonempty&#45;&gt;category_theory.is_filtered -->
<g id="edge688" class="edge">
<title>nonempty&#45;&gt;category_theory.is_filtered</title>
<g id="a_edge688"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_filtered_of_semilattice_sup_nonempty" xlink:title="category_theory.is_filtered_of_semilattice_sup_nonempty">
<path fill="none" stroke="black" d="M11105.01,-1030.2C11089.01,-1009.1 11062.01,-967.13 11072.01,-929.48 11078.01,-906.22 11092.01,-882.51 11103.01,-865.97"/>
<polygon fill="black" stroke="black" points="11106.05,-867.74 11109.01,-857.57 11100.35,-863.67 11106.05,-867.74"/>
</a>
</g>
</g>
<!-- char_zero -->
<g id="node371" class="node">
<title>char_zero</title>
<g id="a_node371"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/char_zero" xlink:title="char_zero">
<polygon fill="none" stroke="black" points="9954.01,-2576 9864.01,-2576 9864.01,-2545 9954.01,-2545 9954.01,-2576"/>
<text text-anchor="middle" x="9909.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">char_zero</text>
</a>
</g>
</g>
<!-- char_zero_of_exp_char_one&#39;&#45;&gt;char_zero -->
<g id="edge689" class="edge">
<title>char_zero_of_exp_char_one&#39;&#45;&gt;char_zero</title>
<g id="a_edge689"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/char_zero_of_exp_char_one'" xlink:title="char_zero_of_exp_char_one&#39;">
<path fill="none" stroke="black" d="M9795.11,-2659.9C9797.51,-2657.8 9852.71,-2609.9 9885.41,-2581.5"/>
<polygon fill="black" stroke="black" points="9887.87,-2584 9893.11,-2574.8 9883.27,-2578.72 9887.87,-2584"/>
</a>
</g>
</g>
<!-- rank_condition -->
<g id="node372" class="node">
<title>rank_condition</title>
<g id="a_node372"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/rank_condition" xlink:title="rank_condition">
<polygon fill="none" stroke="black" points="10066.01,-1970 9934.01,-1970 9934.01,-1939 10066.01,-1939 10066.01,-1970"/>
<text text-anchor="middle" x="10000.01" y="-1950.8" font-family="Courier,monospace" font-size="14.00">rank_condition</text>
</a>
</g>
</g>
<!-- strong_rank_condition&#45;&gt;rank_condition -->
<g id="edge690" class="edge">
<title>strong_rank_condition&#45;&gt;rank_condition</title>
<g id="a_edge690"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/rank_condition_of_strong_rank_condition" xlink:title="rank_condition_of_strong_rank_condition">
<path fill="none" stroke="black" d="M10184.01,-2040.4C10146.01,-2022.9 10080.01,-1992.3 10038.01,-1972.9"/>
<polygon fill="black" stroke="black" points="10039.55,-1969.75 10029.01,-1968.6 10036.53,-1976.07 10039.55,-1969.75"/>
</a>
</g>
</g>
<!-- no_min_order&#45;&gt;nhds_within_Iio_self_ne_bot -->
<g id="edge691" class="edge">
<title>no_min_order&#45;&gt;nhds_within_Iio_self_ne_bot</title>
<g id="a_edge691"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Iio_self_ne_bot" xlink:title="nhds_within_Iio_self_ne_bot">
<path fill="none" stroke="black" d="M12444.01,-2247.8C12459.01,-2245.8 12476.01,-2243.9 12491.01,-2242.5 12781.01,-2215.7 13527.01,-2272.5 13800.01,-2170.5 13869.01,-2144.9 13898.01,-2135.2 13930.01,-2069.5 14000.01,-1927.3 13382.01,-1989 13225.01,-1968.5 13198.01,-1965 13166.01,-1959.6 13150.01,-1956.8"/>
<polygon fill="black" stroke="black" points="13150.48,-1953.33 13140.01,-1955 13149.24,-1960.22 13150.48,-1953.33"/>
</a>
</g>
</g>
<!-- discrete_topology.order_topology_of_pred_succ&#39; -->
<g id="node373" class="node">
<title>discrete_topology.order_topology_of_pred_succ&#39;</title>
<g id="a_node373"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/discrete_topology.order_topology_of_pred_succ'" xlink:title="discrete_topology.order_topology_of_pred_succ&#39;">
<ellipse fill="black" stroke="black" cx="12396.01" cy="-2155.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- no_min_order&#45;&gt;discrete_topology.order_topology_of_pred_succ&#39; -->
<g id="edge692" class="edge">
<title>no_min_order&#45;&gt;discrete_topology.order_topology_of_pred_succ&#39;</title>
<g id="a_edge692"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/discrete_topology.order_topology_of_pred_succ'" xlink:title="discrete_topology.order_topology_of_pred_succ&#39;">
<path fill="none" stroke="black" d="M12388.01,-2242.2C12390.01,-2222.2 12393.01,-2185.3 12395.01,-2167.4"/>
<polygon fill="black" stroke="black" points="12398.52,-2167.49 12396.01,-2157.2 12391.55,-2166.81 12398.52,-2167.49"/>
</a>
</g>
</g>
<!-- no_bot_order -->
<g id="node374" class="node">
<title>no_bot_order</title>
<g id="a_node374"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/no_bot_order" xlink:title="no_bot_order">
<polygon fill="none" stroke="black" points="11928.51,-2071 11813.51,-2071 11813.51,-2040 11928.51,-2040 11928.51,-2071"/>
<text text-anchor="middle" x="11871.01" y="-2051.8" font-family="Courier,monospace" font-size="14.00">no_bot_order</text>
</a>
</g>
</g>
<!-- no_min_order&#45;&gt;no_bot_order -->
<g id="edge693" class="edge">
<title>no_min_order&#45;&gt;no_bot_order</title>
<g id="a_edge693"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/no_min_order.to_no_bot_order" xlink:title="no_min_order.to_no_bot_order">
<path fill="none" stroke="black" d="M12376.01,-2242.2C12355.01,-2217.9 12309.01,-2167.4 12258.01,-2141.5 12230.01,-2127.1 12041.01,-2089.1 11938.01,-2069"/>
<polygon fill="black" stroke="black" points="11938.51,-2065.53 11928.01,-2067 11937.13,-2072.39 11938.51,-2065.53"/>
</a>
</g>
</g>
<!-- ne_zero -->
<g id="node375" class="node">
<title>ne_zero</title>
<g id="a_node375"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ne_zero" xlink:title="ne_zero">
<polygon fill="none" stroke="black" points="10045.51,-2171 9972.51,-2171 9972.51,-2140 10045.51,-2140 10045.51,-2171"/>
<text text-anchor="middle" x="10009.01" y="-2151.8" font-family="Courier,monospace" font-size="14.00">ne_zero</text>
</a>
</g>
</g>
<!-- ne_zero.invertible&#45;&gt;ne_zero -->
<g id="edge694" class="edge">
<title>ne_zero.invertible&#45;&gt;ne_zero</title>
<g id="a_edge694"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ne_zero.invertible" xlink:title="ne_zero.invertible">
<path fill="none" stroke="black" d="M9992.01,-2255.9C9992.41,-2253.9 10000.01,-2209.5 10005.01,-2180.9"/>
<polygon fill="black" stroke="black" points="10008.5,-2181.29 10007.01,-2170.8 10001.64,-2179.93 10008.5,-2181.29"/>
</a>
</g>
</g>
<!-- ideal.is_prime -->
<g id="node376" class="node">
<title>ideal.is_prime</title>
<g id="a_node376"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ideal.is_prime" xlink:title="ideal.is_prime">
<polygon fill="none" stroke="black" points="9687.01,-2171 9555.01,-2171 9555.01,-2140 9687.01,-2140 9687.01,-2171"/>
<text text-anchor="middle" x="9621.01" y="-2151.8" font-family="Courier,monospace" font-size="14.00">ideal.is_prime</text>
</a>
</g>
</g>
<!-- valuation.supp.ideal.is_prime&#45;&gt;ideal.is_prime -->
<g id="edge695" class="edge">
<title>valuation.supp.ideal.is_prime&#45;&gt;ideal.is_prime</title>
<g id="a_edge695"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/valuation.supp.ideal.is_prime" xlink:title="valuation.supp.ideal.is_prime">
<path fill="none" stroke="black" d="M9767.01,-2255.9C9766.51,-2255 9762.91,-2247.2 9758.01,-2242.5 9728.81,-2214.1 9688.61,-2190.4 9659.31,-2175.2"/>
<polygon fill="black" stroke="black" points="9660.72,-2171.99 9650.21,-2170.6 9657.56,-2178.23 9660.72,-2171.99"/>
</a>
</g>
</g>
<!-- no_max_order&#45;&gt;nhds_within_Ioi_self_ne_bot -->
<g id="edge696" class="edge">
<title>no_max_order&#45;&gt;nhds_within_Ioi_self_ne_bot</title>
<g id="a_edge696"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/nhds_within_Ioi_self_ne_bot" xlink:title="nhds_within_Ioi_self_ne_bot">
<path fill="none" stroke="black" d="M12266.01,-2242.2C12287.01,-2217.4 12334.01,-2165.4 12387.01,-2141.5 12603.01,-2043.8 12699.01,-2166.9 12915.01,-2069.5 12944.01,-2056.2 13016.01,-1985.4 13039.01,-1962.3"/>
<polygon fill="black" stroke="black" points="13041.55,-1964.71 13046.01,-1955.1 13036.53,-1959.83 13041.55,-1964.71"/>
</a>
</g>
</g>
<!-- no_max_order&#45;&gt;discrete_topology.order_topology_of_pred_succ&#39; -->
<g id="edge697" class="edge">
<title>no_max_order&#45;&gt;discrete_topology.order_topology_of_pred_succ&#39;</title>
<g id="a_edge697"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/discrete_topology.order_topology_of_pred_succ'" xlink:title="discrete_topology.order_topology_of_pred_succ&#39;">
<path fill="none" stroke="black" d="M12274.01,-2242.4C12305.01,-2220.5 12366.01,-2178.3 12388.01,-2162.8"/>
<polygon fill="black" stroke="black" points="12389.97,-2165.7 12396.01,-2157 12385.86,-2160.04 12389.97,-2165.7"/>
</a>
</g>
</g>
<!-- no_top_order -->
<g id="node377" class="node">
<title>no_top_order</title>
<g id="a_node377"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/no_top_order" xlink:title="no_top_order">
<polygon fill="none" stroke="black" points="11795.51,-2071 11680.51,-2071 11680.51,-2040 11795.51,-2040 11795.51,-2071"/>
<text text-anchor="middle" x="11738.01" y="-2051.8" font-family="Courier,monospace" font-size="14.00">no_top_order</text>
</a>
</g>
</g>
<!-- no_max_order&#45;&gt;no_top_order -->
<g id="edge698" class="edge">
<title>no_max_order&#45;&gt;no_top_order</title>
<g id="a_edge698"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/no_max_order.to_no_top_order" xlink:title="no_max_order.to_no_top_order">
<path fill="none" stroke="black" d="M12254.01,-2242.2C12252.01,-2217.9 12244.01,-2167.3 12213.01,-2141.5 12072.01,-2023.3 11986.01,-2103.7 11805.01,-2069.5 11805.01,-2069.5 11805.01,-2069.5 11805.01,-2069.4"/>
<polygon fill="black" stroke="black" points="11805.48,-2065.93 11795.01,-2067.6 11804.24,-2072.82 11805.48,-2065.93"/>
</a>
</g>
</g>
<!-- noncompact_space -->
<g id="node378" class="node">
<title>noncompact_space</title>
<g id="a_node378"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/noncompact_space" xlink:title="noncompact_space">
<polygon fill="none" stroke="black" points="14724.01,-1060 14576.01,-1060 14576.01,-1029 14724.01,-1029 14724.01,-1060"/>
<text text-anchor="middle" x="14650.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">noncompact_space</text>
</a>
</g>
</g>
<!-- real_normed_space.noncompact_space&#45;&gt;noncompact_space -->
<g id="edge699" class="edge">
<title>real_normed_space.noncompact_space&#45;&gt;noncompact_space</title>
<g id="a_edge699"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/real_normed_space.noncompact_space" xlink:title="real_normed_space.noncompact_space">
<path fill="none" stroke="black" d="M14346.01,-1245.9C14347.01,-1244.8 14355.01,-1236.4 14363.01,-1232.5 14499.01,-1167.9 14600.01,-1278 14695.01,-1160.5 14718.01,-1132.6 14691.01,-1092 14670.01,-1067.4"/>
<polygon fill="black" stroke="black" points="14672.92,-1065.44 14664.01,-1059.7 14667.4,-1069.74 14672.92,-1065.44"/>
</a>
</g>
</g>
<!-- noetherian_ring_strong_rank_condition&#45;&gt;strong_rank_condition -->
<g id="edge701" class="edge">
<title>noetherian_ring_strong_rank_condition&#45;&gt;strong_rank_condition</title>
<g id="a_edge701"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/noetherian_ring_strong_rank_condition" xlink:title="noetherian_ring_strong_rank_condition">
<path fill="none" stroke="black" d="M10319.01,-2154.9C10317.01,-2152.8 10266.01,-2105.3 10235.01,-2076.9"/>
<polygon fill="black" stroke="black" points="10237.53,-2074.46 10228.01,-2069.8 10232.54,-2079.38 10237.53,-2074.46"/>
</a>
</g>
</g>
<!-- norm_one_class -->
<g id="node379" class="node">
<title>norm_one_class</title>
<g id="a_node379"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/norm_one_class" xlink:title="norm_one_class">
<polygon fill="none" stroke="black" points="12185.01,-2576 12053.01,-2576 12053.01,-2545 12185.01,-2545 12185.01,-2576"/>
<text text-anchor="middle" x="12119.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">norm_one_class</text>
</a>
</g>
</g>
<!-- cstar_ring.norm_one_class&#45;&gt;norm_one_class -->
<g id="edge702" class="edge">
<title>cstar_ring.norm_one_class&#45;&gt;norm_one_class</title>
<g id="a_edge702"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cstar_ring.norm_one_class" xlink:title="cstar_ring.norm_one_class">
<path fill="none" stroke="black" d="M12798.01,-2660C12793.01,-2659.3 12467.01,-2618.6 12194.01,-2574.7"/>
<polygon fill="black" stroke="black" points="12194.44,-2571.22 12184.01,-2573.1 12193.34,-2578.14 12194.44,-2571.22"/>
</a>
</g>
</g>
<!-- no_zero_smul_divisors -->
<g id="node380" class="node">
<title>no_zero_smul_divisors</title>
<g id="a_node380"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/no_zero_smul_divisors" xlink:title="no_zero_smul_divisors">
<polygon fill="none" stroke="black" points="9880.01,-2071 9690.01,-2071 9690.01,-2040 9880.01,-2040 9880.01,-2071"/>
<text text-anchor="middle" x="9785.01" y="-2051.8" font-family="Courier,monospace" font-size="14.00">no_zero_smul_divisors</text>
</a>
</g>
</g>
<!-- no_zero_smul_divisors.algebra.no_zero_smul_divisors&#45;&gt;no_zero_smul_divisors -->
<g id="edge703" class="edge">
<title>no_zero_smul_divisors.algebra.no_zero_smul_divisors&#45;&gt;no_zero_smul_divisors</title>
<g id="a_edge703"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/no_zero_smul_divisors.algebra.no_zero_smul_divisors" xlink:title="no_zero_smul_divisors.algebra.no_zero_smul_divisors">
<path fill="none" stroke="black" d="M9785.01,-2255.9C9785.01,-2251.1 9785.01,-2132 9785.01,-2080"/>
<polygon fill="black" stroke="black" points="9788.51,-2079.7 9785.01,-2069.7 9781.51,-2079.7 9788.51,-2079.7"/>
</a>
</g>
</g>
<!-- category_theory.is_cofiltered_or_empty -->
<g id="node381" class="node">
<title>category_theory.is_cofiltered_or_empty</title>
<g id="a_node381"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_cofiltered_or_empty" xlink:title="category_theory.is_cofiltered_or_empty">
<polygon fill="none" stroke="black" points="12262.51,-756.98 11929.51,-756.98 11929.51,-725.98 12262.51,-725.98 12262.51,-756.98"/>
<text text-anchor="middle" x="12096.01" y="-737.78" font-family="Courier,monospace" font-size="14.00">category_theory.is_cofiltered_or_empty</text>
</a>
</g>
</g>
<!-- category_theory.is_cofiltered&#45;&gt;category_theory.is_cofiltered_or_empty -->
<g id="edge704" class="edge">
<title>category_theory.is_cofiltered&#45;&gt;category_theory.is_cofiltered_or_empty</title>
<g id="a_edge704"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_cofiltered.to_is_cofiltered_or_empty" xlink:title="category_theory.is_cofiltered.to_is_cofiltered_or_empty">
<path fill="none" stroke="black" d="M11480.01,-828.47C11613.01,-810.03 11850.01,-777.08 11988.01,-757.92"/>
<polygon fill="black" stroke="black" points="11989.54,-761.25 11999.01,-756.51 11988.65,-754.31 11989.54,-761.25"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_cofiltered_limits.preserves_cofiltered_limits -->
<g id="node382" class="node">
<title>category_theory.limits.preserves_cofiltered_limits.preserves_cofiltered_limits</title>
<g id="a_node382"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_cofiltered_limits.preserves_cofiltered_limits" xlink:title="category_theory.limits.preserves_cofiltered_limits.preserves_cofiltered_limits">
<ellipse fill="black" stroke="black" cx="10654.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_cofiltered&#45;&gt;category_theory.limits.preserves_cofiltered_limits.preserves_cofiltered_limits -->
<g id="edge705" class="edge">
<title>category_theory.is_cofiltered&#45;&gt;category_theory.limits.preserves_cofiltered_limits.preserves_cofiltered_limits</title>
<g id="a_edge705"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_cofiltered_limits.preserves_cofiltered_limits" xlink:title="category_theory.limits.preserves_cofiltered_limits.preserves_cofiltered_limits">
<path fill="none" stroke="black" d="M11284.01,-828.47C11102.01,-803.85 10730.01,-753.37 10664.01,-744.37"/>
<polygon fill="black" stroke="black" points="10664.4,-740.89 10654.01,-742.99 10663.44,-747.82 10664.4,-740.89"/>
</a>
</g>
</g>
<!-- category_theory.is_cofiltered_of_directed_ge_nonempty&#45;&gt;category_theory.is_cofiltered -->
<g id="edge706" class="edge">
<title>category_theory.is_cofiltered_of_directed_ge_nonempty&#45;&gt;category_theory.is_cofiltered</title>
<g id="a_edge706"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_cofiltered_of_directed_ge_nonempty" xlink:title="category_theory.is_cofiltered_of_directed_ge_nonempty">
<path fill="none" stroke="black" d="M11438.01,-942.91C11437.01,-940.86 11412.01,-895.28 11396.01,-866.71"/>
<polygon fill="black" stroke="black" points="11398.95,-864.79 11391.01,-857.77 11392.84,-868.21 11398.95,-864.79"/>
</a>
</g>
</g>
<!-- category_theory.is_filtered_of_directed_le_nonempty&#45;&gt;category_theory.is_filtered -->
<g id="edge707" class="edge">
<title>category_theory.is_filtered_of_directed_le_nonempty&#45;&gt;category_theory.is_filtered</title>
<g id="a_edge707"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_filtered_of_directed_le_nonempty" xlink:title="category_theory.is_filtered_of_directed_le_nonempty">
<path fill="none" stroke="black" d="M11420.01,-942.88C11420.01,-941.85 11416.01,-933.49 11410.01,-929.48 11357.01,-892.72 11289.01,-871.58 11232.01,-859.52"/>
<polygon fill="black" stroke="black" points="11232.51,-856.05 11222.01,-857.52 11231.13,-862.91 11232.51,-856.05"/>
</a>
</g>
</g>
<!-- algebraic_geometry.is_integral -->
<g id="node383" class="node">
<title>algebraic_geometry.is_integral</title>
<g id="a_node383"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.is_integral" xlink:title="algebraic_geometry.is_integral">
<polygon fill="none" stroke="black" points="10946.01,-857.98 10680.01,-857.98 10680.01,-826.98 10946.01,-826.98 10946.01,-857.98"/>
<text text-anchor="middle" x="10813.01" y="-838.78" font-family="Courier,monospace" font-size="14.00">algebraic_geometry.is_integral</text>
</a>
</g>
</g>
<!-- algebraic_geometry.Scheme.restrict.is_integral&#45;&gt;algebraic_geometry.is_integral -->
<g id="edge709" class="edge">
<title>algebraic_geometry.Scheme.restrict.is_integral&#45;&gt;algebraic_geometry.is_integral</title>
<g id="a_edge709"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.Scheme.restrict.is_integral" xlink:title="algebraic_geometry.Scheme.restrict.is_integral">
<path fill="none" stroke="black" d="M10944.01,-942.97C10935.01,-942.73 10928.01,-934.96 10921.01,-929.48 10892.01,-905.47 10858.01,-880.58 10835.01,-863.89"/>
<polygon fill="black" stroke="black" points="10837.06,-861.05 10827.01,-857.7 10832.78,-866.59 10837.06,-861.05"/>
</a>
</g>
</g>
<!-- category_theory.is_filtered_or_empty -->
<g id="node384" class="node">
<title>category_theory.is_filtered_or_empty</title>
<g id="a_node384"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_filtered_or_empty" xlink:title="category_theory.is_filtered_or_empty">
<polygon fill="none" stroke="black" points="11460.01,-756.98 11144.01,-756.98 11144.01,-725.98 11460.01,-725.98 11460.01,-756.98"/>
<text text-anchor="middle" x="11302.01" y="-737.78" font-family="Courier,monospace" font-size="14.00">category_theory.is_filtered_or_empty</text>
</a>
</g>
</g>
<!-- category_theory.is_filtered&#45;&gt;category_theory.is_filtered_or_empty -->
<g id="edge710" class="edge">
<title>category_theory.is_filtered&#45;&gt;category_theory.is_filtered_or_empty</title>
<g id="a_edge710"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_filtered.to_is_filtered_or_empty" xlink:title="category_theory.is_filtered.to_is_filtered_or_empty">
<path fill="none" stroke="black" d="M11144.01,-828.42C11176.01,-811.07 11232.01,-780.92 11268.01,-761.47"/>
<polygon fill="black" stroke="black" points="11269.93,-764.41 11277.01,-756.53 11266.56,-758.27 11269.93,-764.41"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_filtered_colimits.preserves_filtered_colimits -->
<g id="node385" class="node">
<title>category_theory.limits.preserves_filtered_colimits.preserves_filtered_colimits</title>
<g id="a_node385"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_filtered_colimits.preserves_filtered_colimits" xlink:title="category_theory.limits.preserves_filtered_colimits.preserves_filtered_colimits">
<ellipse fill="black" stroke="black" cx="7784.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.is_filtered&#45;&gt;category_theory.limits.preserves_filtered_colimits.preserves_filtered_colimits -->
<g id="edge711" class="edge">
<title>category_theory.is_filtered&#45;&gt;category_theory.limits.preserves_filtered_colimits.preserves_filtered_colimits</title>
<g id="a_edge711"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_filtered_colimits.preserves_filtered_colimits" xlink:title="category_theory.limits.preserves_filtered_colimits.preserves_filtered_colimits">
<path fill="none" stroke="black" d="M11000.01,-831.54C10984.01,-830.37 10968.01,-829.31 10953.01,-828.48 9609.11,-755.76 7941.01,-743.95 7794.41,-743.04"/>
<polygon fill="black" stroke="black" points="7794.13,-739.54 7784.11,-742.98 7794.09,-746.54 7794.13,-739.54"/>
</a>
</g>
</g>
<!-- char_zero&#45;&gt;is_separable.of_finite -->
<g id="edge712" class="edge">
<title>char_zero&#45;&gt;is_separable.of_finite</title>
<g id="a_edge712"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_separable.of_finite" xlink:title="is_separable.of_finite">
<path fill="none" stroke="black" d="M9953.71,-2558.2C10322.01,-2551.1 12849.01,-2501.9 12921.01,-2473.5 12984.01,-2448.6 13008.01,-2434.5 13036.01,-2372.5 13041.01,-2360.8 13038.01,-2356.2 13036.01,-2343.5 13029.01,-2309.6 13018.01,-2304.1 13007.01,-2271.5 12992.01,-2227.3 12985.01,-2216.7 12978.01,-2170.5 12976.01,-2157.7 12972.01,-2152.8 12978.01,-2141.5 12995.01,-2110.6 13218.01,-1993.2 13243.01,-1968.5 13244.01,-1967.2 13246.01,-1965.6 13247.01,-1964"/>
<polygon fill="black" stroke="black" points="13250.17,-1965.53 13252.01,-1955.1 13244.06,-1962.1 13250.17,-1965.53"/>
</a>
</g>
</g>
<!-- char_zero.fintype.card.invertible -->
<g id="node386" class="node">
<title>char_zero.fintype.card.invertible</title>
<g id="a_node386"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/char_zero.fintype.card.invertible" xlink:title="char_zero.fintype.card.invertible">
<ellipse fill="black" stroke="black" cx="9575.01" cy="-2459.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- char_zero&#45;&gt;char_zero.fintype.card.invertible -->
<g id="edge713" class="edge">
<title>char_zero&#45;&gt;char_zero.fintype.card.invertible</title>
<g id="a_edge713"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/char_zero.fintype.card.invertible" xlink:title="char_zero.fintype.card.invertible">
<path fill="none" stroke="black" d="M9864.31,-2551.3C9786.31,-2537.2 9629.11,-2505.7 9584.01,-2473.5 9582.41,-2472.3 9580.91,-2470.8 9579.71,-2469.1"/>
<polygon fill="black" stroke="black" points="9582.75,-2467.34 9575.01,-2460.1 9576.54,-2470.58 9582.75,-2467.34"/>
</a>
</g>
</g>
<!-- invertible -->
<g id="node387" class="node">
<title>invertible</title>
<g id="a_node387"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/invertible" xlink:title="invertible">
<polygon fill="none" stroke="black" points="9639.01,-2374 9541.01,-2374 9541.01,-2343 9639.01,-2343 9639.01,-2374"/>
<text text-anchor="middle" x="9590.01" y="-2354.8" font-family="Courier,monospace" font-size="14.00">invertible</text>
</a>
</g>
</g>
<!-- char_zero&#45;&gt;invertible -->
<g id="edge714" class="edge">
<title>char_zero&#45;&gt;invertible</title>
<g id="a_edge714"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/invertible_two" xlink:title="invertible_two">
<path fill="none" stroke="black" d="M9880.11,-2545.4C9816.91,-2510.8 9670.31,-2419.1 9612.91,-2378.6"/>
<polygon fill="black" stroke="black" points="9614.69,-2375.56 9604.51,-2372.6 9610.62,-2381.26 9614.69,-2375.56"/>
</a>
</g>
</g>
<!-- char_zero&#45;&gt;invertible -->
<g id="edge715" class="edge">
<title>char_zero&#45;&gt;invertible</title>
<g id="a_edge715"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/invertible_three" xlink:title="invertible_three">
<path fill="none" stroke="black" d="M9887.31,-2545.4C9831.91,-2510.6 9684.61,-2418.3 9620.51,-2378.1"/>
<polygon fill="black" stroke="black" points="9622.05,-2374.93 9611.71,-2372.6 9618.34,-2380.87 9622.05,-2374.93"/>
</a>
</g>
</g>
<!-- char_zero&#45;&gt;invertible -->
<g id="edge716" class="edge">
<title>char_zero&#45;&gt;invertible</title>
<g id="a_edge716"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/invertible_succ" xlink:title="invertible_succ">
<path fill="none" stroke="black" d="M9894.31,-2545.3C9846.41,-2510.2 9698.81,-2417.5 9627.91,-2377.6"/>
<polygon fill="black" stroke="black" points="9629.36,-2374.4 9618.91,-2372.6 9625.96,-2380.52 9629.36,-2374.4"/>
</a>
</g>
</g>
<!-- infinite -->
<g id="node388" class="node">
<title>infinite</title>
<g id="a_node388"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/infinite" xlink:title="infinite">
<polygon fill="none" stroke="black" points="11494.51,-2878 11413.51,-2878 11413.51,-2847 11494.51,-2847 11494.51,-2878"/>
<text text-anchor="middle" x="11454.01" y="-2858.8" font-family="Courier,monospace" font-size="14.00">infinite</text>
</a>
</g>
</g>
<!-- char_zero&#45;&gt;infinite -->
<g id="edge717" class="edge">
<title>char_zero&#45;&gt;infinite</title>
<g id="a_edge717"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/char_zero.infinite" xlink:title="char_zero.infinite">
<path fill="none" stroke="black" d="M9938.41,-2574.5C9986.41,-2596.4 10085.01,-2640.7 10169.01,-2675.5 10171.01,-2676.2 10430.01,-2776.1 10432.01,-2776.5 10851.01,-2870.4 10975.01,-2777.2 11403.01,-2848.7"/>
<polygon fill="black" stroke="black" points="11402.57,-2852.17 11413.01,-2850.4 11403.74,-2845.27 11402.57,-2852.17"/>
</a>
</g>
</g>
<!-- is_alg_closed_of_char_zero.is_cyclotomic_extension -->
<g id="node389" class="node">
<title>is_alg_closed_of_char_zero.is_cyclotomic_extension</title>
<g id="a_node389"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_alg_closed_of_char_zero.is_cyclotomic_extension" xlink:title="is_alg_closed_of_char_zero.is_cyclotomic_extension">
<ellipse fill="black" stroke="black" cx="12665.01" cy="-2459.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- char_zero&#45;&gt;is_alg_closed_of_char_zero.is_cyclotomic_extension -->
<g id="edge718" class="edge">
<title>char_zero&#45;&gt;is_alg_closed_of_char_zero.is_cyclotomic_extension</title>
<g id="a_edge718"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_alg_closed_of_char_zero.is_cyclotomic_extension" xlink:title="is_alg_closed_of_char_zero.is_cyclotomic_extension">
<path fill="none" stroke="black" d="M9953.61,-2558C10256.01,-2551.4 12011.01,-2511.8 12544.01,-2473.5 12585.01,-2470.5 12634.01,-2464.2 12655.01,-2461.4"/>
<polygon fill="black" stroke="black" points="12655.6,-2464.85 12665.01,-2460 12654.63,-2457.92 12655.6,-2464.85"/>
</a>
</g>
</g>
<!-- char_p -->
<g id="node390" class="node">
<title>char_p</title>
<g id="a_node390"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/char_p" xlink:title="char_p">
<polygon fill="none" stroke="black" points="13154.01,-2475 13090.01,-2475 13090.01,-2444 13154.01,-2444 13154.01,-2475"/>
<text text-anchor="middle" x="13122.01" y="-2455.8" font-family="Courier,monospace" font-size="14.00">char_p</text>
</a>
</g>
</g>
<!-- char_zero&#45;&gt;char_p -->
<g id="edge719" class="edge">
<title>char_zero&#45;&gt;char_p</title>
<g id="a_edge719"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/char_p.of_char_zero" xlink:title="char_p.of_char_zero">
<path fill="none" stroke="black" d="M9953.61,-2558.4C10314.01,-2553.5 12748.01,-2519 13070.01,-2473.5 13073.01,-2473 13077.01,-2472.5 13080.01,-2471.8"/>
<polygon fill="black" stroke="black" points="13081,-2475.17 13090.01,-2469.6 13079.5,-2468.33 13081,-2475.17"/>
</a>
</g>
</g>
<!-- ne_zero.char_zero -->
<g id="node391" class="node">
<title>ne_zero.char_zero</title>
<g id="a_node391"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ne_zero.char_zero" xlink:title="ne_zero.char_zero">
<ellipse fill="black" stroke="black" cx="10009.01" cy="-2055.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- char_zero&#45;&gt;ne_zero.char_zero -->
<g id="edge720" class="edge">
<title>char_zero&#45;&gt;ne_zero.char_zero</title>
<g id="a_edge720"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ne_zero.char_zero" xlink:title="ne_zero.char_zero">
<path fill="none" stroke="black" d="M9913.31,-2545.1C9922.81,-2512.8 9945.01,-2429.9 9945.01,-2359 9945.01,-2359 9945.01,-2359 9945.01,-2256 9945.01,-2204.4 9947.61,-2190.4 9964.01,-2141.5 9974.11,-2111.6 9993.61,-2079.5 10003.01,-2064.6"/>
<polygon fill="black" stroke="black" points="10006.11,-2066.29 10009.01,-2056.1 10000.39,-2062.25 10006.11,-2066.29"/>
</a>
</g>
</g>
<!-- invertible_of_pos -->
<g id="node392" class="node">
<title>invertible_of_pos</title>
<g id="a_node392"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/invertible_of_pos" xlink:title="invertible_of_pos">
<ellipse fill="black" stroke="black" cx="9909.01" cy="-2459.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- char_zero&#45;&gt;invertible_of_pos -->
<g id="edge721" class="edge">
<title>char_zero&#45;&gt;invertible_of_pos</title>
<g id="a_edge721"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/invertible_of_pos" xlink:title="invertible_of_pos">
<path fill="none" stroke="black" d="M9909.01,-2545.2C9909.01,-2525.2 9909.01,-2488.3 9909.01,-2470.4"/>
<polygon fill="black" stroke="black" points="9912.51,-2470.2 9909.01,-2460.2 9905.51,-2470.2 9912.51,-2470.2"/>
</a>
</g>
</g>
<!-- rank_condition&#45;&gt;invariant_basis_number -->
<g id="edge722" class="edge">
<title>rank_condition&#45;&gt;invariant_basis_number</title>
<g id="a_edge722"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/invariant_basis_number_of_rank_condition" xlink:title="invariant_basis_number_of_rank_condition">
<path fill="none" stroke="black" d="M9991.21,-1939.2C9980.81,-1922.9 9963.41,-1895.5 9951.11,-1876.1"/>
<polygon fill="black" stroke="black" points="9954.03,-1874.16 9945.71,-1867.6 9948.12,-1877.92 9954.03,-1874.16"/>
</a>
</g>
</g>
<!-- discrete_topology.order_topology_of_pred_succ&#39;&#45;&gt;order_topology -->
<g id="edge723" class="edge">
<title>discrete_topology.order_topology_of_pred_succ&#39;&#45;&gt;order_topology</title>
<g id="a_edge723"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/discrete_topology.order_topology_of_pred_succ'" xlink:title="discrete_topology.order_topology_of_pred_succ&#39;">
<path fill="none" stroke="black" d="M12396.01,-2154.9C12396.01,-2152.9 12404.01,-2108.5 12408.01,-2079.9"/>
<polygon fill="black" stroke="black" points="12411.5,-2080.29 12410.01,-2069.8 12404.64,-2078.93 12411.5,-2080.29"/>
</a>
</g>
</g>
<!-- first_order.language.model_DLO -->
<g id="node393" class="node">
<title>first_order.language.model_DLO</title>
<g id="a_node393"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.model_DLO" xlink:title="first_order.language.model_DLO">
<ellipse fill="black" stroke="black" cx="11340.01" cy="-1954.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- no_bot_order&#45;&gt;first_order.language.model_DLO -->
<g id="edge724" class="edge">
<title>no_bot_order&#45;&gt;first_order.language.model_DLO</title>
<g id="a_edge724"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.model_DLO" xlink:title="first_order.language.model_DLO">
<path fill="none" stroke="black" d="M11814.01,-2042.3C11810.01,-2041.7 11807.01,-2041.1 11804.01,-2040.5 11602.01,-2004.2 11518.01,-2083.7 11348.01,-1968.5 11346.01,-1967.5 11345.01,-1966 11344.01,-1964.5"/>
<polygon fill="black" stroke="black" points="11347.15,-1962.93 11340.01,-1955.1 11340.71,-1965.67 11347.15,-1962.93"/>
</a>
</g>
</g>
<!-- ne_zero&#45;&gt;ne_zero -->
<g id="edge725" class="edge">
<title>ne_zero&#45;&gt;ne_zero</title>
<g id="a_edge725"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ne_zero.coe_trans" xlink:title="ne_zero.coe_trans">
<path fill="none" stroke="black" d="M10026.01,-2170.6C10044.01,-2179.2 10063.01,-2174.4 10063.01,-2156 10063.01,-2140.9 10050.01,-2135 10036.01,-2138"/>
<polygon fill="black" stroke="black" points="10034.36,-2134.87 10026.01,-2141.4 10036.61,-2141.49 10034.36,-2134.87"/>
</a>
</g>
</g>
<!-- ne_zero&#45;&gt;ne_zero.char_zero -->
<g id="edge726" class="edge">
<title>ne_zero&#45;&gt;ne_zero.char_zero</title>
<g id="a_edge726"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ne_zero.char_zero" xlink:title="ne_zero.char_zero">
<path fill="none" stroke="black" d="M10004.01,-2141.2C10001.01,-2120.8 10002.01,-2083.1 10005.01,-2065.5"/>
<polygon fill="black" stroke="black" points="10008.36,-2066.57 10009.01,-2056 10001.91,-2063.86 10008.36,-2066.57"/>
</a>
</g>
</g>
<!-- ideal.is_prime&#45;&gt;ideal.is_prime -->
<g id="edge727" class="edge">
<title>ideal.is_prime&#45;&gt;ideal.is_prime</title>
<g id="a_edge727"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ideal.is_prime.comap" xlink:title="ideal.is_prime.comap">
<path fill="none" stroke="black" d="M9647.31,-2170.6C9674.21,-2179.2 9704.01,-2174.4 9704.01,-2156 9704.01,-2139.9 9680.91,-2134.1 9657.21,-2138.8"/>
<polygon fill="black" stroke="black" points="9656.1,-2135.47 9647.31,-2141.4 9657.88,-2142.25 9656.1,-2135.47"/>
</a>
</g>
</g>
<!-- no_top_order&#45;&gt;first_order.language.model_DLO -->
<g id="edge728" class="edge">
<title>no_top_order&#45;&gt;first_order.language.model_DLO</title>
<g id="a_edge728"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.model_DLO" xlink:title="first_order.language.model_DLO">
<path fill="none" stroke="black" d="M11681.01,-2042.7C11576.01,-2021.8 11362.01,-1978.3 11348.01,-1968.5 11347.01,-1967.4 11345.01,-1966 11344.01,-1964.4"/>
<polygon fill="black" stroke="black" points="11347.18,-1962.9 11340.01,-1955.1 11340.75,-1965.67 11347.18,-1962.9"/>
</a>
</g>
</g>
<!-- noncompact_space&#45;&gt;filter.ne_bot -->
<g id="edge729" class="edge">
<title>noncompact_space&#45;&gt;filter.ne_bot</title>
<g id="a_edge729"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.coclosed_compact.filter.ne_bot" xlink:title="filter.coclosed_compact.filter.ne_bot">
<path fill="none" stroke="black" d="M14662.01,-1030.2C14680.01,-1013.2 14716.01,-984.2 14741.01,-964.8"/>
<polygon fill="black" stroke="black" points="14743.23,-967.51 14749.01,-958.63 14738.96,-961.97 14743.23,-967.51"/>
</a>
</g>
</g>
<!-- noncompact_space&#45;&gt;filter.ne_bot -->
<g id="edge730" class="edge">
<title>noncompact_space&#45;&gt;filter.ne_bot</title>
<g id="a_edge730"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.cocompact.filter.ne_bot" xlink:title="filter.cocompact.filter.ne_bot">
<path fill="none" stroke="black" d="M14671.01,-1030.4C14694.01,-1013.6 14730.01,-984.87 14752.01,-965.4"/>
<polygon fill="black" stroke="black" points="14754.22,-968.14 14759.01,-958.69 14749.37,-963.08 14754.22,-968.14"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_cofiltered_limits.preserves_cofiltered_limits&#45;&gt;category_theory.limits.preserves_limits_of_shape -->
<g id="edge812" class="edge">
<title>category_theory.limits.preserves_cofiltered_limits.preserves_cofiltered_limits&#45;&gt;category_theory.limits.preserves_limits_of_shape</title>
<g id="a_edge812"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_cofiltered_limits.preserves_cofiltered_limits" xlink:title="category_theory.limits.preserves_cofiltered_limits.preserves_cofiltered_limits">
<path fill="none" stroke="black" d="M10654.01,-740.98C10638.01,-740.35 8958.81,-674.33 8351.81,-650.46"/>
<polygon fill="black" stroke="black" points="8351.74,-646.95 8341.61,-650.06 8351.47,-653.95 8351.74,-646.95"/>
</a>
</g>
</g>
<!-- algebraic_geometry.is_integral&#45;&gt;algebraic_geometry.Scheme.restrict.is_integral -->
<g id="edge821" class="edge">
<title>algebraic_geometry.is_integral&#45;&gt;algebraic_geometry.Scheme.restrict.is_integral</title>
<g id="a_edge821"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.Scheme.restrict.is_integral" xlink:title="algebraic_geometry.Scheme.restrict.is_integral">
<path fill="none" stroke="black" d="M10840.01,-857.7C10866.01,-873.96 10907.01,-902.28 10939.01,-929.48 10940.01,-930.59 10942.01,-931.8 10943.01,-933.02"/>
<polygon fill="black" stroke="black" points="10939.53,-933.37 10944.01,-942.97 10946.5,-932.67 10939.53,-933.37"/>
</a>
</g>
</g>
<!-- algebraic_geometry.is_reduced -->
<g id="node437" class="node">
<title>algebraic_geometry.is_reduced</title>
<g id="a_node437"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.is_reduced" xlink:title="algebraic_geometry.is_reduced">
<polygon fill="none" stroke="black" points="11021.01,-756.98 10763.01,-756.98 10763.01,-725.98 11021.01,-725.98 11021.01,-756.98"/>
<text text-anchor="middle" x="10892.01" y="-737.78" font-family="Courier,monospace" font-size="14.00">algebraic_geometry.is_reduced</text>
</a>
</g>
</g>
<!-- algebraic_geometry.is_integral&#45;&gt;algebraic_geometry.is_reduced -->
<g id="edge822" class="edge">
<title>algebraic_geometry.is_integral&#45;&gt;algebraic_geometry.is_reduced</title>
<g id="a_edge822"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/algebraic_geometry.is_reduced_of_is_integral" xlink:title="algebraic_geometry.is_reduced_of_is_integral">
<path fill="none" stroke="black" d="M10824.01,-828.21C10837.01,-811.74 10859.01,-783.95 10875.01,-764.6"/>
<polygon fill="black" stroke="black" points="10877.8,-766.72 10881.01,-756.63 10872.2,-762.51 10877.8,-766.72"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_filtered_colimits.preserves_filtered_colimits&#45;&gt;category_theory.limits.preserves_colimits_of_shape -->
<g id="edge823" class="edge">
<title>category_theory.limits.preserves_filtered_colimits.preserves_filtered_colimits&#45;&gt;category_theory.limits.preserves_colimits_of_shape</title>
<g id="a_edge823"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_filtered_colimits.preserves_filtered_colimits" xlink:title="category_theory.limits.preserves_filtered_colimits.preserves_filtered_colimits">
<path fill="none" stroke="black" d="M7783.91,-740.91C7782.21,-738.83 7742.01,-692.08 7717.61,-663.6"/>
<polygon fill="black" stroke="black" points="7720.01,-661.03 7710.81,-655.77 7714.73,-665.62 7720.01,-661.03"/>
</a>
</g>
</g>
<!-- char_zero.fintype.card.invertible&#45;&gt;invertible -->
<g id="edge877" class="edge">
<title>char_zero.fintype.card.invertible&#45;&gt;invertible</title>
<g id="a_edge877"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/char_zero.fintype.card.invertible" xlink:title="char_zero.fintype.card.invertible">
<path fill="none" stroke="black" d="M9575.01,-2457.9C9575.31,-2455.9 9582.01,-2411.5 9586.41,-2382.9"/>
<polygon fill="black" stroke="black" points="9589.91,-2383.21 9587.91,-2372.8 9582.98,-2382.18 9589.91,-2383.21"/>
</a>
</g>
</g>
<!-- invertible&#45;&gt;category_theory.linear.has_smul.smul.category_theory.mono -->
<g id="edge1056" class="edge">
<title>invertible&#45;&gt;category_theory.linear.has_smul.smul.category_theory.mono</title>
<g id="a_edge1056"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.linear.has_smul.smul.category_theory.mono" xlink:title="category_theory.linear.has_smul.smul.category_theory.mono">
<path fill="none" stroke="black" d="M9562.31,-2343.4C9531.31,-2327.6 9479.91,-2300.2 9439.01,-2271.5 9140.51,-2062 9140.21,-1904.4 8816.01,-1737.5 8531.11,-1590.8 8408.21,-1696 8116.01,-1564.5 7971.81,-1499.6 7923.01,-1485.1 7823.01,-1362.5 7752.51,-1276.1 7814.71,-1197.8 7725.01,-1131.5 7600.71,-1039.6 7136.51,-1174.3 7033.01,-1059.5 6999.21,-1022 7026.11,-984.23 7084.01,-929.48 7142.11,-874.51 7187.71,-908.85 7249.01,-857.48 7250.51,-856.19 7251.91,-854.57 7253.11,-852.91"/>
<polygon fill="black" stroke="black" points="7256.22,-854.52 7258.01,-844.08 7250.1,-851.13 7256.22,-854.52"/>
</a>
</g>
</g>
<!-- invertible&#45;&gt;category_theory.linear.has_smul.smul.category_theory.epi -->
<g id="edge1057" class="edge">
<title>invertible&#45;&gt;category_theory.linear.has_smul.smul.category_theory.epi</title>
<g id="a_edge1057"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.linear.has_smul.smul.category_theory.epi" xlink:title="category_theory.linear.has_smul.smul.category_theory.epi">
<path fill="none" stroke="black" d="M9555.11,-2343.4C9515.81,-2327.7 9450.61,-2300.3 9397.01,-2271.5 9083.51,-2102.7 9049.51,-1980.5 8723.01,-1838.5 8556.41,-1766 8505.51,-1771.3 8327.01,-1737.5 8250.91,-1723.1 7016.91,-1587.8 6943.01,-1564.5 6759.41,-1506.7 6718.51,-1471.7 6560.01,-1362.5 6543.91,-1351.4 6545.01,-1341 6527.01,-1333.5 6319.01,-1246.5 5736.41,-1304 5515.01,-1261.5 5269.91,-1214.4 5155.71,-1247 4991.01,-1059.5 4920.41,-979.08 4884.61,-928.38 4923.01,-828.48 4984.61,-668.12 5216.41,-688.76 5163.01,-525.48 5145.71,-472.59 5135.81,-454.61 5089.01,-424.48 4772.91,-220.9 4572.51,-462.01 4261.01,-251.48 4259.31,-250.36 4257.91,-248.81 4256.71,-247.17"/>
<polygon fill="black" stroke="black" points="4259.72,-245.36 4252.01,-238.09 4253.5,-248.58 4259.72,-245.36"/>
</a>
</g>
</g>
<!-- invertible&#45;&gt;ne_zero.invertible -->
<g id="edge1058" class="edge">
<title>invertible&#45;&gt;ne_zero.invertible</title>
<g id="a_edge1058"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ne_zero.invertible" xlink:title="ne_zero.invertible">
<path fill="none" stroke="black" d="M9638.91,-2345C9733.11,-2321.7 9934.91,-2272.1 9982.01,-2260.5"/>
<polygon fill="black" stroke="black" points="9983.16,-2263.82 9992.01,-2258 9981.46,-2257.03 9983.16,-2263.82"/>
</a>
</g>
</g>
<!-- invertible&#45;&gt;invertible -->
<g id="edge1059" class="edge">
<title>invertible&#45;&gt;invertible</title>
<g id="a_edge1059"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/invertible.star" xlink:title="invertible.star">
<path fill="none" stroke="black" d="M9638.71,-2367.1C9649.01,-2366.2 9656.51,-2363.1 9656.51,-2358 9656.51,-2354.8 9653.61,-2352.4 9648.91,-2350.9"/>
<polygon fill="black" stroke="black" points="9649.2,-2347.39 9638.71,-2348.9 9647.85,-2354.26 9649.2,-2347.39"/>
</a>
</g>
</g>
<!-- invertible&#45;&gt;invertible -->
<g id="edge1060" class="edge">
<title>invertible&#45;&gt;invertible</title>
<g id="a_edge1060"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/invertible_pow" xlink:title="invertible_pow">
<path fill="none" stroke="black" d="M9616.81,-2372.6C9644.11,-2381.2 9674.51,-2376.4 9674.51,-2358 9674.51,-2341.9 9651.01,-2336.1 9626.81,-2340.8"/>
<polygon fill="black" stroke="black" points="9625.61,-2337.5 9616.81,-2343.4 9627.37,-2344.27 9625.61,-2337.5"/>
</a>
</g>
</g>
<!-- infinite&#45;&gt;filter.ne_bot -->
<g id="edge1067" class="edge">
<title>infinite&#45;&gt;filter.ne_bot</title>
<g id="a_edge1067"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.cofinite_ne_bot" xlink:title="filter.cofinite_ne_bot">
<path fill="none" stroke="black" d="M11495.01,-2850C11498.01,-2849.4 11500.01,-2848.9 11503.01,-2848.5 11744.01,-2811.9 13462.01,-2856.8 13692.01,-2776.5 13712.01,-2769.4 13711.01,-2756.1 13731.01,-2747.5 13895.01,-2676.4 13959.01,-2739.2 14126.01,-2675.5 14297.01,-2610.4 14388.01,-2541.6 14388.01,-2359 14388.01,-2359 14388.01,-2359 14388.01,-2155 14388.01,-2095.6 14366.01,-2076.4 14319.01,-2040.5 14219.01,-1964.9 13990.01,-2046.1 14056.01,-1939.5 14093.01,-1878.9 14155.01,-1923.4 14199.01,-1867.5 14264.01,-1784.7 14217.01,-1735.6 14253.01,-1636.5 14304.01,-1494.8 14286.01,-1425.5 14405.01,-1333.5 14577.01,-1200.6 14772.01,-1358.3 14863.01,-1160.5 14873.01,-1139.3 14892.01,-1100.4 14861.01,-1030.5 14849.01,-1002.7 14823.01,-979.69 14802.01,-964.53"/>
<polygon fill="black" stroke="black" points="14804.16,-961.76 14794.01,-958.72 14800.05,-967.43 14804.16,-961.76"/>
</a>
</g>
</g>
<!-- infinite&#45;&gt;nontrivial -->
<g id="edge1068" class="edge">
<title>infinite&#45;&gt;nontrivial</title>
<g id="a_edge1068"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/infinite.nontrivial" xlink:title="infinite.nontrivial">
<path fill="none" stroke="black" d="M11413.01,-2850.4C11410.01,-2849.7 11407.01,-2849 11404.01,-2848.5 11031.01,-2783 10926.01,-2835.8 10549.01,-2776.6"/>
<polygon fill="black" stroke="black" points="10549.44,-2773.12 10539.01,-2775 10548.34,-2780.04 10549.44,-2773.12"/>
</a>
</g>
</g>
<!-- infinite&#45;&gt;first_order.language.Theory.model -->
<g id="edge1069" class="edge">
<title>infinite&#45;&gt;first_order.language.Theory.model</title>
<g id="a_edge1069"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.model_infinite_theory" xlink:title="first_order.language.model_infinite_theory">
<path fill="none" stroke="black" d="M11413.01,-2850.5C11410.01,-2849.8 11407.01,-2849.1 11404.01,-2848.5 11128.01,-2795.7 11032.01,-2891.2 10775.01,-2776.5 10744.01,-2762.7 10336.01,-2402.4 10320.01,-2372.5 10293.01,-2321.2 10284.01,-2295.8 10307.01,-2242.5 10325.01,-2199.8 10357.01,-2208.9 10383.01,-2170.5 10595.01,-1860.5 10579.01,-1724.4 10579.01,-1349 10579.01,-1349 10579.01,-1349 10579.01,-1246 10579.01,-1194.4 10562.01,-1168.1 10598.01,-1131.5 10731.01,-997.5 10839.01,-1123.9 11017.01,-1059.5 11041.01,-1050.7 11044.01,-1042.2 11067.01,-1030.5 11117.01,-1004.8 11176.01,-978.93 11216.01,-962.46"/>
<polygon fill="black" stroke="black" points="11217.28,-965.73 11225.01,-958.48 11214.45,-959.32 11217.28,-965.73"/>
</a>
</g>
</g>
<!-- is_cyclotomic_extension -->
<g id="node645" class="node">
<title>is_cyclotomic_extension</title>
<g id="a_node645"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_cyclotomic_extension" xlink:title="is_cyclotomic_extension">
<polygon fill="none" stroke="black" points="12309.51,-2374 12102.51,-2374 12102.51,-2343 12309.51,-2343 12309.51,-2374"/>
<text text-anchor="middle" x="12206.01" y="-2354.8" font-family="Courier,monospace" font-size="14.00">is_cyclotomic_extension</text>
</a>
</g>
</g>
<!-- is_alg_closed_of_char_zero.is_cyclotomic_extension&#45;&gt;is_cyclotomic_extension -->
<g id="edge1317" class="edge">
<title>is_alg_closed_of_char_zero.is_cyclotomic_extension&#45;&gt;is_cyclotomic_extension</title>
<g id="a_edge1317"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_alg_closed_of_char_zero.is_cyclotomic_extension" xlink:title="is_alg_closed_of_char_zero.is_cyclotomic_extension">
<path fill="none" stroke="black" d="M12665.01,-2457.9C12664.01,-2456.8 12658.01,-2448.2 12651.01,-2444.5 12594.01,-2415.1 12430.01,-2388.6 12318.01,-2373.1"/>
<polygon fill="black" stroke="black" points="12318.4,-2369.62 12308.01,-2371.7 12317.43,-2376.55 12318.4,-2369.62"/>
</a>
</g>
</g>
<!-- subsingleton -->
<g id="node563" class="node">
<title>subsingleton</title>
<g id="a_node563"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/subsingleton" xlink:title="subsingleton">
<polygon fill="none" stroke="black" points="13198.51,-2374 13083.51,-2374 13083.51,-2343 13198.51,-2343 13198.51,-2374"/>
<text text-anchor="middle" x="13141.01" y="-2354.8" font-family="Courier,monospace" font-size="14.00">subsingleton</text>
</a>
</g>
</g>
<!-- char_p&#45;&gt;subsingleton -->
<g id="edge1318" class="edge">
<title>char_p&#45;&gt;subsingleton</title>
<g id="a_edge1318"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/char_p.subsingleton" xlink:title="char_p.subsingleton">
<path fill="none" stroke="black" d="M13125.01,-2444.2C13128.01,-2428.3 13133.01,-2402 13136.01,-2382.7"/>
<polygon fill="black" stroke="black" points="13139.5,-2383.09 13138.01,-2372.6 13132.64,-2381.73 13139.5,-2383.09"/>
</a>
</g>
</g>
<!-- ne_zero.char_zero&#45;&gt;ne_zero -->
<g id="edge1319" class="edge">
<title>ne_zero.char_zero&#45;&gt;ne_zero</title>
<g id="a_edge1319"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ne_zero.char_zero" xlink:title="ne_zero.char_zero">
<path fill="none" stroke="black" d="M10009.01,-2056C10015.01,-2057.6 10017.01,-2102.3 10015.01,-2131.1"/>
<polygon fill="black" stroke="black" points="10011.52,-2130.9 10014.01,-2141.2 10018.48,-2131.59 10011.52,-2130.9"/>
</a>
</g>
</g>
<!-- invertible_of_pos&#45;&gt;invertible -->
<g id="edge1320" class="edge">
<title>invertible_of_pos&#45;&gt;invertible</title>
<g id="a_edge1320"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/invertible_of_pos" xlink:title="invertible_of_pos">
<path fill="none" stroke="black" d="M9908.91,-2458C9905.31,-2456.9 9733.41,-2403.5 9643.51,-2375.6"/>
<polygon fill="black" stroke="black" points="9644.3,-2372.18 9633.71,-2372.6 9642.25,-2378.87 9644.3,-2372.18"/>
</a>
</g>
</g>
<!-- first_order.language.model_DLO&#45;&gt;first_order.language.Theory.model -->
<g id="edge1542" class="edge">
<title>first_order.language.model_DLO&#45;&gt;first_order.language.Theory.model</title>
<g id="a_edge1542"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.model_DLO" xlink:title="first_order.language.model_DLO">
<path fill="none" stroke="black" d="M11340.01,-1952.9C11340.01,-1949.2 11344.01,-1829.5 11368.01,-1737.5 11391.01,-1651.1 11443.01,-1640.3 11443.01,-1551 11443.01,-1551 11443.01,-1551 11443.01,-1448 11443.01,-1251.2 11317.01,-1036.1 11273.01,-967.4"/>
<polygon fill="black" stroke="black" points="11275.57,-964.94 11267.01,-958.69 11269.8,-968.91 11275.57,-964.94"/>
</a>
</g>
</g>
<!-- ordered_ring&#45;&gt;ordered_add_comm_group -->
<g id="edge741" class="edge">
<title>ordered_ring&#45;&gt;ordered_add_comm_group</title>
<g id="a_edge741"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_ring.to_ordered_add_comm_group" xlink:title="ordered_ring.to_ordered_add_comm_group">
<path fill="none" stroke="black" d="M9384.21,-2951.1C9387.21,-2950.5 9390.11,-2950 9393.01,-2949.5 9569.41,-2919.2 9775.81,-2892.2 9898.71,-2877"/>
<polygon fill="black" stroke="black" points="9899.44,-2880.44 9908.91,-2875.7 9898.55,-2873.49 9899.44,-2880.44"/>
</a>
</g>
</g>
<!-- ordered_ring&#45;&gt;ring -->
<g id="edge739" class="edge">
<title>ordered_ring&#45;&gt;ring</title>
<g id="a_edge739"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_ring.to_ring" xlink:title="ordered_ring.to_ring">
<path fill="none" stroke="black" d="M9269.81,-2950.8C9266.91,-2950.3 9263.91,-2949.9 9261.01,-2949.5 8803.51,-2886.7 8240.91,-2868.6 8097.51,-2864.8"/>
<polygon fill="black" stroke="black" points="8097.28,-2861.29 8087.21,-2864.6 8097.14,-2868.29 8097.28,-2861.29"/>
</a>
</g>
</g>
<!-- ordered_ring&#45;&gt;ordered_semiring -->
<g id="edge740" class="edge">
<title>ordered_ring&#45;&gt;ordered_semiring</title>
<g id="a_edge740"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_ring.to_ordered_semiring" xlink:title="ordered_ring.to_ordered_semiring">
<path fill="none" stroke="black" d="M9334.11,-2949.2C9342.41,-2933.1 9356.41,-2906 9366.31,-2886.7"/>
<polygon fill="black" stroke="black" points="9369.53,-2888.09 9371.01,-2877.6 9363.32,-2884.88 9369.53,-2888.09"/>
</a>
</g>
</g>
<!-- ordered_semiring&#45;&gt;semiring -->
<g id="edge742" class="edge">
<title>ordered_semiring&#45;&gt;semiring</title>
<g id="a_edge742"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_semiring.to_semiring" xlink:title="ordered_semiring.to_semiring">
<path fill="none" stroke="black" d="M9304.21,-2852.5C9186.01,-2837.2 8946.51,-2805.7 8744.01,-2776.5 8731.91,-2774.8 8718.91,-2772.8 8706.71,-2770.9"/>
<polygon fill="black" stroke="black" points="8707.12,-2767.42 8696.71,-2769.4 8706.08,-2774.34 8707.12,-2767.42"/>
</a>
</g>
</g>
<!-- ordered_semiring&#45;&gt;ordered_cancel_add_comm_monoid -->
<g id="edge743" class="edge">
<title>ordered_semiring&#45;&gt;ordered_cancel_add_comm_monoid</title>
<g id="a_edge743"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_semiring.to_ordered_cancel_add_comm_monoid" xlink:title="ordered_semiring.to_ordered_cancel_add_comm_monoid">
<path fill="none" stroke="black" d="M9451.61,-2853.3C9595.31,-2836.3 9914.51,-2798.6 10092.01,-2777.7"/>
<polygon fill="black" stroke="black" points="10092.5,-2781.17 10102.01,-2776.5 10091.67,-2774.22 10092.5,-2781.17"/>
</a>
</g>
</g>
<!-- linear_ordered_add_comm_monoid&#45;&gt;linear_order -->
<g id="edge744" class="edge">
<title>linear_ordered_add_comm_monoid&#45;&gt;linear_order</title>
<g id="a_edge744"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_add_comm_monoid.to_linear_order" xlink:title="linear_ordered_add_comm_monoid.to_linear_order">
<path fill="none" stroke="black" d="M11005.01,-2747.5C11139.01,-2727.4 11388.01,-2690 11508.01,-2672.1"/>
<polygon fill="black" stroke="black" points="11508.64,-2675.54 11518.01,-2670.6 11507.61,-2668.62 11508.64,-2675.54"/>
</a>
</g>
</g>
<!-- ordered_add_comm_monoid -->
<g id="node398" class="node">
<title>ordered_add_comm_monoid</title>
<g id="a_node398"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_add_comm_monoid" xlink:title="ordered_add_comm_monoid">
<polygon fill="none" stroke="black" points="11018.51,-2576 10811.51,-2576 10811.51,-2545 11018.51,-2545 11018.51,-2576"/>
<text text-anchor="middle" x="10915.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">ordered_add_comm_monoid</text>
</a>
</g>
</g>
<!-- linear_ordered_add_comm_monoid&#45;&gt;ordered_add_comm_monoid -->
<g id="edge745" class="edge">
<title>linear_ordered_add_comm_monoid&#45;&gt;ordered_add_comm_monoid</title>
<g id="a_edge745"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/linear_ordered_add_comm_monoid.to_ordered_add_comm_monoid" xlink:title="linear_ordered_add_comm_monoid.to_ordered_add_comm_monoid">
<path fill="none" stroke="black" d="M10915.01,-2747.3C10915.01,-2713.6 10915.01,-2626.9 10915.01,-2584.8"/>
<polygon fill="black" stroke="black" points="10918.51,-2584.6 10915.01,-2574.6 10911.51,-2584.6 10918.51,-2584.6"/>
</a>
</g>
</g>
<!-- ordered_cancel_add_comm_monoid&#45;&gt;partial_order -->
<g id="edge777" class="edge">
<title>ordered_cancel_add_comm_monoid&#45;&gt;partial_order</title>
<g id="a_edge777"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_cancel_add_comm_monoid.to_partial_order" xlink:title="ordered_cancel_add_comm_monoid.to_partial_order">
<path fill="none" stroke="black" d="M10347.01,-2752.1C10375.01,-2750.4 10405.01,-2748.7 10432.01,-2747.5 11037.01,-2720.6 12559.01,-2777 13156.01,-2675.5 13301.01,-2650.9 13343.01,-2646.4 13471.01,-2574.5 13603.01,-2500.5 13608.01,-2443.7 13721.01,-2343.5 13748.01,-2320 13780.01,-2294.9 13802.01,-2278"/>
<polygon fill="black" stroke="black" points="13804.32,-2280.64 13810.01,-2271.7 13799.99,-2275.14 13804.32,-2280.64"/>
</a>
</g>
</g>
<!-- ordered_cancel_add_comm_monoid&#45;&gt;add_cancel_comm_monoid -->
<g id="edge778" class="edge">
<title>ordered_cancel_add_comm_monoid&#45;&gt;add_cancel_comm_monoid</title>
<g id="a_edge778"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_cancel_add_comm_monoid.to_add_cancel_comm_monoid" xlink:title="ordered_cancel_add_comm_monoid.to_add_cancel_comm_monoid">
<path fill="none" stroke="black" d="M10085.01,-2756C9717.21,-2741.7 8698.91,-2700 8631.01,-2675.5 8610.71,-2668.2 8611.71,-2655.4 8592.01,-2646.5 8453.71,-2583.8 8363.71,-2683.5 8258.01,-2574.5 8234.71,-2550.5 8232.81,-2509.7 8234.31,-2483.9"/>
<polygon fill="black" stroke="black" points="8237.81,-2484.05 8235.11,-2473.8 8230.84,-2483.49 8237.81,-2484.05"/>
</a>
</g>
</g>
<!-- ordered_cancel_add_comm_monoid&#45;&gt;ordered_add_comm_monoid -->
<g id="edge779" class="edge">
<title>ordered_cancel_add_comm_monoid&#45;&gt;ordered_add_comm_monoid</title>
<g id="a_edge779"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_cancel_add_comm_monoid.to_ordered_add_comm_monoid" xlink:title="ordered_cancel_add_comm_monoid.to_ordered_add_comm_monoid">
<path fill="none" stroke="black" d="M10232.01,-2747.5C10261.01,-2723 10327.01,-2671.6 10392.01,-2646.5 10527.01,-2594.1 10694.01,-2573.8 10803.01,-2566"/>
<polygon fill="black" stroke="black" points="10803.32,-2569.49 10813.01,-2565.2 10802.77,-2562.51 10803.32,-2569.49"/>
</a>
</g>
</g>
<!-- ordered_add_comm_monoid&#45;&gt;partial_order -->
<g id="edge783" class="edge">
<title>ordered_add_comm_monoid&#45;&gt;partial_order</title>
<g id="a_edge783"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_add_comm_monoid.to_partial_order" xlink:title="ordered_add_comm_monoid.to_partial_order">
<path fill="none" stroke="black" d="M11017.01,-2556.8C11429.01,-2547.6 12951.01,-2511.5 13163.01,-2473.5 13305.01,-2448.1 13336.01,-2421 13472.01,-2372.5 13506.01,-2360.5 13513.01,-2355.2 13547.01,-2343.5 13623.01,-2317.2 13713.01,-2290.7 13770.01,-2274.4"/>
<polygon fill="black" stroke="black" points="13771.38,-2277.65 13780.01,-2271.5 13769.43,-2270.92 13771.38,-2277.65"/>
</a>
</g>
</g>
<!-- ordered_add_comm_monoid&#45;&gt;add_comm_monoid -->
<g id="edge784" class="edge">
<title>ordered_add_comm_monoid&#45;&gt;add_comm_monoid</title>
<g id="a_edge784"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ordered_add_comm_monoid.to_add_comm_monoid" xlink:title="ordered_add_comm_monoid.to_add_comm_monoid">
<path fill="none" stroke="black" d="M10813.01,-2551.9C10630.01,-2538.8 10233.01,-2508.9 9900.01,-2473.5 9799.31,-2462.8 9774.81,-2454.4 9674.01,-2444.5 9207.61,-2398.7 9089.21,-2409 8622.01,-2372.5 8597.81,-2370.6 8571.41,-2368.4 8547.51,-2366.3"/>
<polygon fill="black" stroke="black" points="8547.69,-2362.8 8537.41,-2365.4 8547.06,-2369.77 8547.69,-2362.8"/>
</a>
</g>
</g>
<!-- lattice_ordered_comm_group.has_one_lattice_has_pos_part&#45;&gt;has_pos_part -->
<g id="edge873" class="edge">
<title>lattice_ordered_comm_group.has_one_lattice_has_pos_part&#45;&gt;has_pos_part</title>
<g id="a_edge873"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_one_lattice_has_pos_part" xlink:title="lattice_ordered_comm_group.has_one_lattice_has_pos_part">
<path fill="none" stroke="black" d="M10734.01,-2356.9C10734.01,-2354.9 10730.01,-2310.5 10727.01,-2281.9"/>
<polygon fill="black" stroke="black" points="10730.48,-2281.41 10726.01,-2271.8 10723.52,-2282.1 10730.48,-2281.41"/>
</a>
</g>
</g>
<!-- lattice_ordered_comm_group.has_one_lattice_has_neg_part&#45;&gt;has_neg_part -->
<g id="edge874" class="edge">
<title>lattice_ordered_comm_group.has_one_lattice_has_neg_part&#45;&gt;has_neg_part</title>
<g id="a_edge874"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_one_lattice_has_neg_part" xlink:title="lattice_ordered_comm_group.has_one_lattice_has_neg_part">
<path fill="none" stroke="black" d="M10602.01,-2356.9C10602.01,-2354.9 10598.01,-2310.5 10595.01,-2281.9"/>
<polygon fill="black" stroke="black" points="10598.48,-2281.41 10594.01,-2271.8 10591.52,-2282.1 10598.48,-2281.41"/>
</a>
</g>
</g>
<!-- semilattice_inf&#45;&gt;partial_order -->
<g id="edge1204" class="edge">
<title>semilattice_inf&#45;&gt;partial_order</title>
<g id="a_edge1204"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semilattice_inf.to_partial_order" xlink:title="semilattice_inf.to_partial_order">
<path fill="none" stroke="black" d="M13392.01,-2343.5C13488.01,-2324.7 13660.01,-2291 13757.01,-2272"/>
<polygon fill="black" stroke="black" points="13757.89,-2275.39 13767.01,-2270 13756.52,-2268.53 13757.89,-2275.39"/>
</a>
</g>
</g>
<!-- has_inf -->
<g id="node608" class="node">
<title>has_inf</title>
<g id="a_node608"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_inf" xlink:title="has_inf">
<polygon fill="none" stroke="black" points="13635.51,-2272 13562.51,-2272 13562.51,-2241 13635.51,-2241 13635.51,-2272"/>
<text text-anchor="middle" x="13599.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">has_inf</text>
</a>
</g>
</g>
<!-- semilattice_inf&#45;&gt;has_inf -->
<g id="edge1205" class="edge">
<title>semilattice_inf&#45;&gt;has_inf</title>
<g id="a_edge1205"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semilattice_inf.to_has_inf" xlink:title="semilattice_inf.to_has_inf">
<path fill="none" stroke="black" d="M13361.01,-2343.4C13411.01,-2325.4 13499.01,-2293.7 13553.01,-2274.4"/>
<polygon fill="black" stroke="black" points="13554.73,-2277.51 13563.01,-2270.9 13552.42,-2270.9 13554.73,-2277.51"/>
</a>
</g>
</g>
<!-- semilattice_sup&#45;&gt;partial_order -->
<g id="edge1206" class="edge">
<title>semilattice_sup&#45;&gt;partial_order</title>
<g id="a_edge1206"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semilattice_sup.to_partial_order" xlink:title="semilattice_sup.to_partial_order">
<path fill="none" stroke="black" d="M11697.01,-2354.8C11955.01,-2346.6 12881.01,-2315.7 13644.01,-2271.5 13681.01,-2269.4 13722.01,-2266.4 13756.01,-2263.8"/>
<polygon fill="black" stroke="black" points="13757.29,-2267.22 13767.01,-2263 13756.79,-2260.23 13757.29,-2267.22"/>
</a>
</g>
</g>
<!-- has_sup -->
<g id="node609" class="node">
<title>has_sup</title>
<g id="a_node609"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_sup" xlink:title="has_sup">
<polygon fill="none" stroke="black" points="10872.51,-2272 10799.51,-2272 10799.51,-2241 10872.51,-2241 10872.51,-2272"/>
<text text-anchor="middle" x="10836.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">has_sup</text>
</a>
</g>
</g>
<!-- semilattice_sup&#45;&gt;has_sup -->
<g id="edge1207" class="edge">
<title>semilattice_sup&#45;&gt;has_sup</title>
<g id="a_edge1207"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/semilattice_sup.to_has_sup" xlink:title="semilattice_sup.to_has_sup">
<path fill="none" stroke="black" d="M11559.01,-2345C11555.01,-2344.4 11552.01,-2344 11549.01,-2343.5 11298.01,-2307 10996.01,-2274.5 10882.01,-2262.7"/>
<polygon fill="black" stroke="black" points="10882.31,-2259.21 10872.01,-2261.7 10881.62,-2266.18 10882.31,-2259.21"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_reflects_colimit&#45;&gt;category_theory.limits.reflects_colimit -->
<g id="edge762" class="edge">
<title>category_theory.limits.comp_reflects_colimit&#45;&gt;category_theory.limits.reflects_colimit</title>
<g id="a_edge762"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_reflects_colimit" xlink:title="category_theory.limits.comp_reflects_colimit">
<path fill="none" stroke="black" d="M8675.31,-843.99C8687.41,-844.79 8691.11,-890.36 8686.71,-919.38"/>
<polygon fill="black" stroke="black" points="8683.28,-918.71 8684.71,-929.21 8690.14,-920.11 8683.28,-918.71"/>
</a>
</g>
</g>
<!-- set.ord_connected -->
<g id="node404" class="node">
<title>set.ord_connected</title>
<g id="a_node404"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/set.ord_connected" xlink:title="set.ord_connected">
<polygon fill="none" stroke="black" points="10698.51,-2071 10541.51,-2071 10541.51,-2040 10698.51,-2040 10698.51,-2071"/>
<text text-anchor="middle" x="10620.01" y="-2051.8" font-family="Courier,monospace" font-size="14.00">set.ord_connected</text>
</a>
</g>
</g>
<!-- set.ord_connected&#45;&gt;filter.tendsto_Ixx_class -->
<g id="edge764" class="edge">
<title>set.ord_connected&#45;&gt;filter.tendsto_Ixx_class</title>
<g id="a_edge764"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/filter.ord_connected.tendsto_Icc" xlink:title="filter.ord_connected.tendsto_Icc">
<path fill="none" stroke="black" d="M10698.01,-2044.9C10829.01,-2029.5 11104.01,-1997.2 11347.01,-1968.7"/>
<polygon fill="black" stroke="black" points="11347.5,-1972.17 11357.01,-1967.5 11346.67,-1965.22 11347.5,-1972.17"/>
</a>
</g>
</g>
<!-- set.ord_connected&#45;&gt;set.ord_connected -->
<g id="edge765" class="edge">
<title>set.ord_connected&#45;&gt;set.ord_connected</title>
<g id="a_edge765"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/set.ord_connected_image" xlink:title="set.ord_connected_image">
<path fill="none" stroke="black" d="M10650.01,-2069.6C10681.01,-2078.2 10715.01,-2073.4 10715.01,-2055 10715.01,-2038.6 10688.01,-2032.9 10660.01,-2038.1"/>
<polygon fill="black" stroke="black" points="10658.98,-2034.75 10650.01,-2040.4 10660.54,-2041.57 10658.98,-2034.75"/>
</a>
</g>
</g>
<!-- set.ord_connected.inter&#39; -->
<g id="node405" class="node">
<title>set.ord_connected.inter&#39;</title>
<g id="a_node405"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/set.ord_connected.inter'" xlink:title="set.ord_connected.inter&#39;">
<ellipse fill="black" stroke="black" cx="10620.01" cy="-1954.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- set.ord_connected&#45;&gt;set.ord_connected.inter&#39; -->
<g id="edge766" class="edge">
<title>set.ord_connected&#45;&gt;set.ord_connected.inter&#39;</title>
<g id="a_edge766"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/set.ord_connected.inter'" xlink:title="set.ord_connected.inter&#39;">
<path fill="none" stroke="black" d="M10610.01,-2040.2C10605.01,-2018.9 10605.01,-1978.7 10613.01,-1962.3"/>
<polygon fill="black" stroke="black" points="10615.62,-1964.64 10620.01,-1955 10610.57,-1959.8 10615.62,-1964.64"/>
</a>
</g>
</g>
<!-- set.ord_connected&#45;&gt;set.ord_connected.inter&#39; -->
<g id="edge767" class="edge">
<title>set.ord_connected&#45;&gt;set.ord_connected.inter&#39;</title>
<g id="a_edge767"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/set.ord_connected.inter'" xlink:title="set.ord_connected.inter&#39;">
<path fill="none" stroke="black" d="M10620.01,-2040.2C10620.01,-2020.2 10620.01,-1983.3 10620.01,-1965.4"/>
<polygon fill="black" stroke="black" points="10623.51,-1965.2 10620.01,-1955.2 10616.51,-1965.2 10623.51,-1965.2"/>
</a>
</g>
</g>
<!-- set.ord_connected.inter&#39;&#45;&gt;set.ord_connected -->
<g id="edge768" class="edge">
<title>set.ord_connected.inter&#39;&#45;&gt;set.ord_connected</title>
<g id="a_edge768"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/set.ord_connected.inter'" xlink:title="set.ord_connected.inter&#39;">
<path fill="none" stroke="black" d="M10620.01,-1955C10632.01,-1955.8 10636.01,-2001.4 10632.01,-2030.4"/>
<polygon fill="black" stroke="black" points="10628.58,-2029.7 10630.01,-2040.2 10635.44,-2031.1 10628.58,-2029.7"/>
</a>
</g>
</g>
<!-- measure_theory.signed_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.signed_measure.have_lebesgue_decomposition -->
<g id="edge769" class="edge">
<title>measure_theory.signed_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.signed_measure.have_lebesgue_decomposition</title>
<g id="a_edge769"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.signed_measure.have_lebesgue_decomposition_smul_real" xlink:title="measure_theory.signed_measure.have_lebesgue_decomposition_smul_real">
<path fill="none" stroke="black" d="M16269.01,-543.91C16280.01,-542.92 16287.01,-541.61 16287.01,-539.98 16287.01,-538.94 16284.01,-538.03 16279.01,-537.24"/>
<polygon fill="black" stroke="black" points="16279.36,-533.76 16269.01,-536.05 16278.53,-540.71 16279.36,-533.76"/>
</a>
</g>
</g>
<!-- measure_theory.signed_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.signed_measure.have_lebesgue_decomposition -->
<g id="edge770" class="edge">
<title>measure_theory.signed_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.signed_measure.have_lebesgue_decomposition</title>
<g id="a_edge770"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.signed_measure.have_lebesgue_decomposition_smul" xlink:title="measure_theory.signed_measure.have_lebesgue_decomposition_smul">
<path fill="none" stroke="black" d="M16269.01,-549.91C16291.01,-547.85 16305.01,-544.54 16305.01,-539.98 16305.01,-536.17 16295.01,-533.23 16279.01,-531.16"/>
<polygon fill="black" stroke="black" points="16279.34,-527.67 16269.01,-530.05 16278.57,-534.63 16279.34,-527.67"/>
</a>
</g>
</g>
<!-- measure_theory.signed_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.signed_measure.have_lebesgue_decomposition -->
<g id="edge771" class="edge">
<title>measure_theory.signed_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.signed_measure.have_lebesgue_decomposition</title>
<g id="a_edge771"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.signed_measure.have_lebesgue_decomposition_neg" xlink:title="measure_theory.signed_measure.have_lebesgue_decomposition_neg">
<path fill="none" stroke="black" d="M16119.01,-554.51C16215.01,-563.25 16323.01,-558.41 16323.01,-539.98 16323.01,-522.2 16222.01,-517.06 16129.01,-524.58"/>
<polygon fill="black" stroke="black" points="16128.67,-521.1 16119.01,-525.45 16129.28,-528.07 16128.67,-521.1"/>
</a>
</g>
</g>
<!-- measure_theory.measure.have_lebesgue_decomposition -->
<g id="node407" class="node">
<title>measure_theory.measure.have_lebesgue_decomposition</title>
<g id="a_node407"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.have_lebesgue_decomposition" xlink:title="measure_theory.measure.have_lebesgue_decomposition">
<polygon fill="none" stroke="black" points="16243.01,-453.98 15809.01,-453.98 15809.01,-422.98 16243.01,-422.98 16243.01,-453.98"/>
<text text-anchor="middle" x="16026.01" y="-434.78" font-family="Courier,monospace" font-size="14.00">measure_theory.measure.have_lebesgue_decomposition</text>
</a>
</g>
</g>
<!-- measure_theory.signed_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.measure.have_lebesgue_decomposition -->
<g id="edge772" class="edge">
<title>measure_theory.signed_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.measure.have_lebesgue_decomposition</title>
<g id="a_edge772"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.signed_measure.have_lebesgue_decomposition.neg_part" xlink:title="measure_theory.signed_measure.have_lebesgue_decomposition.neg_part">
<path fill="none" stroke="black" d="M16021.01,-525.21C16019.01,-509.33 16019.01,-482.93 16020.01,-463.72"/>
<polygon fill="black" stroke="black" points="16023.51,-463.93 16021.01,-453.63 16016.54,-463.24 16023.51,-463.93"/>
</a>
</g>
</g>
<!-- measure_theory.signed_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.measure.have_lebesgue_decomposition -->
<g id="edge773" class="edge">
<title>measure_theory.signed_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.measure.have_lebesgue_decomposition</title>
<g id="a_edge773"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.signed_measure.have_lebesgue_decomposition.pos_part" xlink:title="measure_theory.signed_measure.have_lebesgue_decomposition.pos_part">
<path fill="none" stroke="black" d="M16031.01,-525.21C16033.01,-509.33 16033.01,-482.93 16032.01,-463.72"/>
<polygon fill="black" stroke="black" points="16035.48,-463.24 16031.01,-453.63 16028.52,-463.93 16035.48,-463.24"/>
</a>
</g>
</g>
<!-- measure_theory.measure.have_lebesgue_decomposition&#45;&gt;measure_theory.measure.have_lebesgue_decomposition -->
<g id="edge774" class="edge">
<title>measure_theory.measure.have_lebesgue_decomposition&#45;&gt;measure_theory.measure.have_lebesgue_decomposition</title>
<g id="a_edge774"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.measure.have_lebesgue_decomposition_smul" xlink:title="measure_theory.measure.have_lebesgue_decomposition_smul">
<path fill="none" stroke="black" d="M16099.01,-453.51C16174.01,-462.25 16257.01,-457.41 16257.01,-438.98 16257.01,-421.38 16181.01,-416.17 16109.01,-423.36"/>
<polygon fill="black" stroke="black" points="16108.58,-419.89 16099.01,-424.45 16109.33,-426.85 16108.58,-419.89"/>
</a>
</g>
</g>
<!-- measure_theory.complex_measure.have_lebesgue_decomposition -->
<g id="node408" class="node">
<title>measure_theory.complex_measure.have_lebesgue_decomposition</title>
<g id="a_node408"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.complex_measure.have_lebesgue_decomposition" xlink:title="measure_theory.complex_measure.have_lebesgue_decomposition">
<polygon fill="none" stroke="black" points="16126.51,-655.98 15625.51,-655.98 15625.51,-624.98 16126.51,-624.98 16126.51,-655.98"/>
<text text-anchor="middle" x="15876.01" y="-636.78" font-family="Courier,monospace" font-size="14.00">measure_theory.complex_measure.have_lebesgue_decomposition</text>
</a>
</g>
</g>
<!-- measure_theory.complex_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.signed_measure.have_lebesgue_decomposition -->
<g id="edge775" class="edge">
<title>measure_theory.complex_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.signed_measure.have_lebesgue_decomposition</title>
<g id="a_edge775"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.complex_measure.have_lebesgue_decomposition.re_part" xlink:title="measure_theory.complex_measure.have_lebesgue_decomposition.re_part">
<path fill="none" stroke="black" d="M15892.01,-626.42C15915.01,-609.22 15960.01,-579.44 15992.01,-559.97"/>
<polygon fill="black" stroke="black" points="15994.27,-562.7 16001.01,-554.53 15990.65,-556.71 15994.27,-562.7"/>
</a>
</g>
</g>
<!-- measure_theory.complex_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.signed_measure.have_lebesgue_decomposition -->
<g id="edge776" class="edge">
<title>measure_theory.complex_measure.have_lebesgue_decomposition&#45;&gt;measure_theory.signed_measure.have_lebesgue_decomposition</title>
<g id="a_edge776"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/measure_theory.complex_measure.have_lebesgue_decomposition.im_part" xlink:title="measure_theory.complex_measure.have_lebesgue_decomposition.im_part">
<path fill="none" stroke="black" d="M15901.01,-626.42C15929.01,-609.41 15974.01,-580.11 16002.01,-560.64"/>
<polygon fill="black" stroke="black" points="16004.08,-563.47 16010.01,-554.69 15999.9,-557.85 16004.08,-563.47"/>
</a>
</g>
</g>
<!-- add_left_cancel_monoid&#45;&gt;add_monoid -->
<g id="edge829" class="edge">
<title>add_left_cancel_monoid&#45;&gt;add_monoid</title>
<g id="a_edge829"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_left_cancel_monoid.to_add_monoid" xlink:title="add_left_cancel_monoid.to_add_monoid">
<path fill="none" stroke="black" d="M8303.81,-2242.5C8385.31,-2226.5 8524.41,-2198.8 8654.21,-2170.6"/>
<polygon fill="black" stroke="black" points="8655.29,-2173.95 8664.31,-2168.4 8653.8,-2167.11 8655.29,-2173.95"/>
</a>
</g>
</g>
<!-- add_left_cancel_semigroup -->
<g id="node442" class="node">
<title>add_left_cancel_semigroup</title>
<g id="a_node442"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_left_cancel_semigroup" xlink:title="add_left_cancel_semigroup">
<polygon fill="none" stroke="black" points="8220.01,-2171 7996.01,-2171 7996.01,-2140 8220.01,-2140 8220.01,-2171"/>
<text text-anchor="middle" x="8108.01" y="-2151.8" font-family="Courier,monospace" font-size="14.00">add_left_cancel_semigroup</text>
</a>
</g>
</g>
<!-- add_left_cancel_monoid&#45;&gt;add_left_cancel_semigroup -->
<g id="edge830" class="edge">
<title>add_left_cancel_monoid&#45;&gt;add_left_cancel_semigroup</title>
<g id="a_edge830"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_left_cancel_monoid.to_add_left_cancel_semigroup" xlink:title="add_left_cancel_monoid.to_add_left_cancel_semigroup">
<path fill="none" stroke="black" d="M8216.71,-2242.4C8195.21,-2225.5 8158.11,-2196.4 8133.31,-2176.9"/>
<polygon fill="black" stroke="black" points="8135.52,-2174.18 8125.51,-2170.7 8131.16,-2179.66 8135.52,-2174.18"/>
</a>
</g>
</g>
<!-- add_cancel_monoid&#45;&gt;add_left_cancel_monoid -->
<g id="edge839" class="edge">
<title>add_cancel_monoid&#45;&gt;add_left_cancel_monoid</title>
<g id="a_edge839"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_cancel_monoid.to_add_left_cancel_monoid" xlink:title="add_cancel_monoid.to_add_left_cancel_monoid">
<path fill="none" stroke="black" d="M8293.41,-2343.2C8282.01,-2326.8 8262.71,-2299.2 8249.31,-2279.9"/>
<polygon fill="black" stroke="black" points="8252.11,-2277.79 8243.51,-2271.6 8246.37,-2281.8 8252.11,-2277.79"/>
</a>
</g>
</g>
<!-- add_right_cancel_monoid -->
<g id="node447" class="node">
<title>add_right_cancel_monoid</title>
<g id="a_node447"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_right_cancel_monoid" xlink:title="add_right_cancel_monoid">
<polygon fill="none" stroke="black" points="8593.51,-2272 8386.51,-2272 8386.51,-2241 8593.51,-2241 8593.51,-2272"/>
<text text-anchor="middle" x="8490.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">add_right_cancel_monoid</text>
</a>
</g>
</g>
<!-- add_cancel_monoid&#45;&gt;add_right_cancel_monoid -->
<g id="edge840" class="edge">
<title>add_cancel_monoid&#45;&gt;add_right_cancel_monoid</title>
<g id="a_edge840"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_cancel_monoid.to_add_right_cancel_monoid" xlink:title="add_cancel_monoid.to_add_right_cancel_monoid">
<path fill="none" stroke="black" d="M8328.61,-2343.4C8361.51,-2326 8418.81,-2295.7 8455.51,-2276.2"/>
<polygon fill="black" stroke="black" points="8457.14,-2279.3 8464.41,-2271.6 8453.92,-2273.08 8457.14,-2279.3"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_biproduct -->
<g id="node411" class="node">
<title>category_theory.limits.has_biproduct</title>
<g id="a_node411"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_biproduct" xlink:title="category_theory.limits.has_biproduct">
<polygon fill="none" stroke="black" points="12806.01,-1060 12490.01,-1060 12490.01,-1029 12806.01,-1029 12806.01,-1060"/>
<text text-anchor="middle" x="12648.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_biproduct</text>
</a>
</g>
</g>
<!-- category_theory.functor.has_biproduct_of_preserves -->
<g id="node412" class="node">
<title>category_theory.functor.has_biproduct_of_preserves</title>
<g id="a_node412"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.has_biproduct_of_preserves" xlink:title="category_theory.functor.has_biproduct_of_preserves">
<ellipse fill="black" stroke="black" cx="13278.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_biproduct&#45;&gt;category_theory.functor.has_biproduct_of_preserves -->
<g id="edge785" class="edge">
<title>category_theory.limits.has_biproduct&#45;&gt;category_theory.functor.has_biproduct_of_preserves</title>
<g id="a_edge785"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.has_biproduct_of_preserves" xlink:title="category_theory.functor.has_biproduct_of_preserves">
<path fill="none" stroke="black" d="M12770.01,-1030.5C12935.01,-1012.1 13212.01,-979.34 13255.01,-958.48 13260.01,-956.21 13264.01,-951.81 13268.01,-948.65"/>
<polygon fill="black" stroke="black" points="13269.83,-951.71 13278.01,-944.99 13267.42,-945.14 13269.83,-951.71"/>
</a>
</g>
</g>
<!-- category_theory.functor.has_biproduct_of_preserves&#45;&gt;category_theory.limits.has_biproduct -->
<g id="edge786" class="edge">
<title>category_theory.functor.has_biproduct_of_preserves&#45;&gt;category_theory.limits.has_biproduct</title>
<g id="a_edge786"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.has_biproduct_of_preserves" xlink:title="category_theory.functor.has_biproduct_of_preserves">
<path fill="none" stroke="black" d="M13278.01,-944.99C13287.01,-945.28 13281.01,-954.76 13273.01,-958.48 13231.01,-978.93 12964.01,-1010.9 12792.01,-1029.4"/>
<polygon fill="black" stroke="black" points="12791.57,-1025.93 12782.01,-1030.5 12792.34,-1032.89 12791.57,-1025.93"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_biproduct -->
<g id="node413" class="node">
<title>category_theory.limits.preserves_biproduct</title>
<g id="a_node413"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_biproduct" xlink:title="category_theory.limits.preserves_biproduct">
<polygon fill="none" stroke="black" points="13347.51,-1060 12980.51,-1060 12980.51,-1029 13347.51,-1029 13347.51,-1060"/>
<text text-anchor="middle" x="13164.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.preserves_biproduct</text>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_biproduct&#45;&gt;category_theory.functor.has_biproduct_of_preserves -->
<g id="edge787" class="edge">
<title>category_theory.limits.preserves_biproduct&#45;&gt;category_theory.functor.has_biproduct_of_preserves</title>
<g id="a_edge787"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.has_biproduct_of_preserves" xlink:title="category_theory.functor.has_biproduct_of_preserves">
<path fill="none" stroke="black" d="M13181.01,-1030.3C13201.01,-1013.7 13235.01,-984.59 13264.01,-958.48 13266.01,-956.52 13268.01,-954.35 13271.01,-952.33"/>
<polygon fill="black" stroke="black" points="13273.59,-954.7 13278.01,-945.07 13268.55,-949.84 13273.59,-954.7"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_binary_coproducts -->
<g id="node414" class="node">
<title>category_theory.limits.has_binary_coproducts</title>
<g id="a_node414"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_binary_coproducts" xlink:title="category_theory.limits.has_binary_coproducts">
<polygon fill="none" stroke="black" points="15510.01,-2576 15126.01,-2576 15126.01,-2545 15510.01,-2545 15510.01,-2576"/>
<text text-anchor="middle" x="15318.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_binary_coproducts</text>
</a>
</g>
</g>
<!-- category_theory.limits.has_binary_biproducts -->
<g id="node415" class="node">
<title>category_theory.limits.has_binary_biproducts</title>
<g id="a_node415"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_binary_biproducts" xlink:title="category_theory.limits.has_binary_biproducts">
<polygon fill="none" stroke="black" points="15118.01,-2677 14734.01,-2677 14734.01,-2646 15118.01,-2646 15118.01,-2677"/>
<text text-anchor="middle" x="14926.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_binary_biproducts</text>
</a>
</g>
</g>
<!-- category_theory.limits.has_binary_biproducts&#45;&gt;category_theory.limits.has_binary_coproducts -->
<g id="edge788" class="edge">
<title>category_theory.limits.has_binary_biproducts&#45;&gt;category_theory.limits.has_binary_coproducts</title>
<g id="a_edge788"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_binary_coproducts_of_has_binary_biproducts" xlink:title="category_theory.limits.has_binary_coproducts_of_has_binary_biproducts">
<path fill="none" stroke="black" d="M14980.01,-2646.4C15051.01,-2628.3 15178.01,-2596.4 15254.01,-2577.1"/>
<polygon fill="black" stroke="black" points="15255.16,-2580.42 15264.01,-2574.6 15253.46,-2573.63 15255.16,-2580.42"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_binary_biproduct -->
<g id="node416" class="node">
<title>category_theory.limits.has_binary_biproduct</title>
<g id="a_node416"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_binary_biproduct" xlink:title="category_theory.limits.has_binary_biproduct">
<polygon fill="none" stroke="black" points="15113.51,-2576 14738.51,-2576 14738.51,-2545 15113.51,-2545 15113.51,-2576"/>
<text text-anchor="middle" x="14926.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_binary_biproduct</text>
</a>
</g>
</g>
<!-- category_theory.limits.has_binary_biproducts&#45;&gt;category_theory.limits.has_binary_biproduct -->
<g id="edge789" class="edge">
<title>category_theory.limits.has_binary_biproducts&#45;&gt;category_theory.limits.has_binary_biproduct</title>
<g id="a_edge789"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_binary_biproducts.has_binary_biproduct" xlink:title="category_theory.limits.has_binary_biproducts.has_binary_biproduct">
<path fill="none" stroke="black" d="M14926.01,-2646.2C14926.01,-2630.3 14926.01,-2604 14926.01,-2584.7"/>
<polygon fill="black" stroke="black" points="14929.51,-2584.6 14926.01,-2574.6 14922.51,-2584.6 14929.51,-2584.6"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_binary_products -->
<g id="node417" class="node">
<title>category_theory.limits.has_binary_products</title>
<g id="a_node417"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_binary_products" xlink:title="category_theory.limits.has_binary_products">
<polygon fill="none" stroke="black" points="14726.51,-2576 14359.51,-2576 14359.51,-2545 14726.51,-2545 14726.51,-2576"/>
<text text-anchor="middle" x="14543.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.has_binary_products</text>
</a>
</g>
</g>
<!-- category_theory.limits.has_binary_biproducts&#45;&gt;category_theory.limits.has_binary_products -->
<g id="edge790" class="edge">
<title>category_theory.limits.has_binary_biproducts&#45;&gt;category_theory.limits.has_binary_products</title>
<g id="a_edge790"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_binary_products_of_has_binary_biproducts" xlink:title="category_theory.limits.has_binary_products_of_has_binary_biproducts">
<path fill="none" stroke="black" d="M14874.01,-2646.4C14804.01,-2628.3 14680.01,-2596.4 14605.01,-2577.1"/>
<polygon fill="black" stroke="black" points="14605.56,-2573.63 14595.01,-2574.6 14603.87,-2580.42 14605.56,-2573.63"/>
</a>
</g>
</g>
<!-- category_theory.functor.has_binary_biproduct_of_preserves -->
<g id="node418" class="node">
<title>category_theory.functor.has_binary_biproduct_of_preserves</title>
<g id="a_node418"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.has_binary_biproduct_of_preserves" xlink:title="category_theory.functor.has_binary_biproduct_of_preserves">
<ellipse fill="black" stroke="black" cx="15766.01" cy="-2459.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_binary_biproduct&#45;&gt;category_theory.functor.has_binary_biproduct_of_preserves -->
<g id="edge791" class="edge">
<title>category_theory.limits.has_binary_biproduct&#45;&gt;category_theory.functor.has_binary_biproduct_of_preserves</title>
<g id="a_edge791"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.has_binary_biproduct_of_preserves" xlink:title="category_theory.functor.has_binary_biproduct_of_preserves">
<path fill="none" stroke="black" d="M15076.01,-2545.5C15304.01,-2525.1 15713.01,-2487.4 15743.01,-2473.5 15748.01,-2471.3 15752.01,-2466.9 15756.01,-2463.7"/>
<polygon fill="black" stroke="black" points="15757.85,-2466.75 15766.01,-2460 15755.42,-2460.19 15757.85,-2466.75"/>
</a>
</g>
</g>
<!-- category_theory.functor.has_binary_biproduct_of_preserves&#45;&gt;category_theory.limits.has_binary_biproduct -->
<g id="edge792" class="edge">
<title>category_theory.functor.has_binary_biproduct_of_preserves&#45;&gt;category_theory.limits.has_binary_biproduct</title>
<g id="a_edge792"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.has_binary_biproduct_of_preserves" xlink:title="category_theory.functor.has_binary_biproduct_of_preserves">
<path fill="none" stroke="black" d="M15766.01,-2460C15775.01,-2460.3 15769.01,-2469.9 15761.01,-2473.5 15732.01,-2487.2 15333.01,-2524.1 15098.01,-2544.6"/>
<polygon fill="black" stroke="black" points="15097.66,-2541.12 15088.01,-2545.5 15098.29,-2548.09 15097.66,-2541.12"/>
</a>
</g>
</g>
<!-- has_involutive_inv&#45;&gt;has_inv -->
<g id="edge798" class="edge">
<title>has_involutive_inv&#45;&gt;has_inv</title>
<g id="a_edge798"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_involutive_inv.to_has_inv" xlink:title="has_involutive_inv.to_has_inv">
<path fill="none" stroke="black" d="M9548.91,-2545.2C9564.51,-2528.6 9591.01,-2500.5 9609.21,-2481.1"/>
<polygon fill="black" stroke="black" points="9611.95,-2483.3 9616.21,-2473.6 9606.83,-2478.52 9611.95,-2483.3"/>
</a>
</g>
</g>
<!-- has_inv.to_has_abs -->
<g id="node422" class="node">
<title>has_inv.to_has_abs</title>
<g id="a_node422"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_inv.to_has_abs" xlink:title="has_inv.to_has_abs">
<ellipse fill="black" stroke="black" cx="10808.01" cy="-2155.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- has_inv&#45;&gt;has_inv.to_has_abs -->
<g id="edge799" class="edge">
<title>has_inv&#45;&gt;has_inv.to_has_abs</title>
<g id="a_edge799"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_inv.to_has_abs" xlink:title="has_inv.to_has_abs">
<path fill="none" stroke="black" d="M9665.21,-2455.4C9822.71,-2444 10443.01,-2397.4 10476.01,-2372.5 10525.01,-2335 10481.01,-2284.6 10527.01,-2242.5 10609.01,-2166.3 10758.01,-2157.9 10798.01,-2157.1"/>
<polygon fill="black" stroke="black" points="10798.05,-2160.6 10808.01,-2157 10797.98,-2153.6 10798.05,-2160.6"/>
</a>
</g>
</g>
<!-- has_abs -->
<g id="node499" class="node">
<title>has_abs</title>
<g id="a_node499"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_abs" xlink:title="has_abs">
<polygon fill="none" stroke="black" points="10844.51,-1970 10771.51,-1970 10771.51,-1939 10844.51,-1939 10844.51,-1970"/>
<text text-anchor="middle" x="10808.01" y="-1950.8" font-family="Courier,monospace" font-size="14.00">has_abs</text>
</a>
</g>
</g>
<!-- has_inv.to_has_abs&#45;&gt;has_abs -->
<g id="edge1609" class="edge">
<title>has_inv.to_has_abs&#45;&gt;has_abs</title>
<g id="a_edge1609"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_inv.to_has_abs" xlink:title="has_inv.to_has_abs">
<path fill="none" stroke="black" d="M10808.01,-2154.9C10808.01,-2150.1 10808.01,-2031 10808.01,-1979"/>
<polygon fill="black" stroke="black" points="10811.51,-1978.7 10808.01,-1968.7 10804.51,-1978.7 10811.51,-1978.7"/>
</a>
</g>
</g>
<!-- separated_space -->
<g id="node423" class="node">
<title>separated_space</title>
<g id="a_node423"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/separated_space" xlink:title="separated_space">
<polygon fill="none" stroke="black" points="15961.01,-1767 15821.01,-1767 15821.01,-1736 15961.01,-1736 15961.01,-1767"/>
<text text-anchor="middle" x="15891.01" y="-1747.8" font-family="Courier,monospace" font-size="14.00">separated_space</text>
</a>
</g>
</g>
<!-- separated_space&#45;&gt;t3_space -->
<g id="edge801" class="edge">
<title>separated_space&#45;&gt;t3_space</title>
<g id="a_edge801"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/separated_t3" xlink:title="separated_t3">
<path fill="none" stroke="black" d="M15874.01,-1737.4C15852.01,-1720.5 15815.01,-1691.4 15790.01,-1671.9"/>
<polygon fill="black" stroke="black" points="15792.06,-1669.06 15782.01,-1665.7 15787.77,-1674.59 15792.06,-1669.06"/>
</a>
</g>
</g>
<!-- completable_top_field -->
<g id="node424" class="node">
<title>completable_top_field</title>
<g id="a_node424"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/completable_top_field" xlink:title="completable_top_field">
<polygon fill="none" stroke="black" points="15998.01,-1868 15808.01,-1868 15808.01,-1837 15998.01,-1837 15998.01,-1868"/>
<text text-anchor="middle" x="15903.01" y="-1848.8" font-family="Courier,monospace" font-size="14.00">completable_top_field</text>
</a>
</g>
</g>
<!-- completable_top_field&#45;&gt;separated_space -->
<g id="edge802" class="edge">
<title>completable_top_field&#45;&gt;separated_space</title>
<g id="a_edge802"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/completable_top_field.to_separated_space" xlink:title="completable_top_field.to_separated_space">
<path fill="none" stroke="black" d="M15901.01,-1838.2C15899.01,-1822.3 15896.01,-1796 15894.01,-1776.7"/>
<polygon fill="black" stroke="black" points="15897.48,-1776.21 15893.01,-1766.6 15890.52,-1776.9 15897.48,-1776.21"/>
</a>
</g>
</g>
<!-- normed_star_group -->
<g id="node425" class="node">
<title>normed_star_group</title>
<g id="a_node425"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_star_group" xlink:title="normed_star_group">
<polygon fill="none" stroke="black" points="14058.51,-2677 13901.51,-2677 13901.51,-2646 14058.51,-2646 14058.51,-2677"/>
<text text-anchor="middle" x="13980.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">normed_star_group</text>
</a>
</g>
</g>
<!-- ring_hom_isometric -->
<g id="node426" class="node">
<title>ring_hom_isometric</title>
<g id="a_node426"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ring_hom_isometric" xlink:title="ring_hom_isometric">
<polygon fill="none" stroke="black" points="14165.51,-2576 14000.51,-2576 14000.51,-2545 14165.51,-2545 14165.51,-2576"/>
<text text-anchor="middle" x="14083.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">ring_hom_isometric</text>
</a>
</g>
</g>
<!-- normed_star_group&#45;&gt;ring_hom_isometric -->
<g id="edge803" class="edge">
<title>normed_star_group&#45;&gt;ring_hom_isometric</title>
<g id="a_edge803"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/ring_hom_isometric.star_ring_end" xlink:title="ring_hom_isometric.star_ring_end">
<path fill="none" stroke="black" d="M13994.01,-2646.2C14012.01,-2629.5 14041.01,-2601 14062.01,-2581.6"/>
<polygon fill="black" stroke="black" points="14064.42,-2584.15 14069.01,-2574.6 14059.47,-2579.2 14064.42,-2584.15"/>
</a>
</g>
</g>
<!-- has_continuous_star -->
<g id="node427" class="node">
<title>has_continuous_star</title>
<g id="a_node427"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_continuous_star" xlink:title="has_continuous_star">
<polygon fill="none" stroke="black" points="13985.01,-2576 13811.01,-2576 13811.01,-2545 13985.01,-2545 13985.01,-2576"/>
<text text-anchor="middle" x="13898.01" y="-2556.8" font-family="Courier,monospace" font-size="14.00">has_continuous_star</text>
</a>
</g>
</g>
<!-- normed_star_group&#45;&gt;has_continuous_star -->
<g id="edge804" class="edge">
<title>normed_star_group&#45;&gt;has_continuous_star</title>
<g id="a_edge804"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/normed_star_group.to_has_continuous_star" xlink:title="normed_star_group.to_has_continuous_star">
<path fill="none" stroke="black" d="M13969.01,-2646.2C13955.01,-2629.7 13932.01,-2601.7 13916.01,-2582.4"/>
<polygon fill="black" stroke="black" points="13918.3,-2579.7 13909.01,-2574.6 13913.09,-2584.38 13918.3,-2579.7"/>
</a>
</g>
</g>
<!-- cstar_ring -->
<g id="node428" class="node">
<title>cstar_ring</title>
<g id="a_node428"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cstar_ring" xlink:title="cstar_ring">
<polygon fill="none" stroke="black" points="13684.01,-2778 13586.01,-2778 13586.01,-2747 13684.01,-2747 13684.01,-2778"/>
<text text-anchor="middle" x="13635.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">cstar_ring</text>
</a>
</g>
</g>
<!-- cstar_ring&#45;&gt;cstar_ring.norm_one_class -->
<g id="edge805" class="edge">
<title>cstar_ring&#45;&gt;cstar_ring.norm_one_class</title>
<g id="a_edge805"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cstar_ring.norm_one_class" xlink:title="cstar_ring.norm_one_class">
<path fill="none" stroke="black" d="M13586.01,-2749.2C13583.01,-2748.6 13580.01,-2748 13577.01,-2747.5 13265.01,-2694.3 12877.01,-2667.2 12808.01,-2662.7"/>
<polygon fill="black" stroke="black" points="12808.23,-2659.21 12798.01,-2662 12807.75,-2666.19 12808.23,-2659.21"/>
</a>
</g>
</g>
<!-- cstar_ring&#45;&gt;normed_star_group -->
<g id="edge806" class="edge">
<title>cstar_ring&#45;&gt;normed_star_group</title>
<g id="a_edge806"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cstar_ring.to_normed_star_group" xlink:title="cstar_ring.to_normed_star_group">
<path fill="none" stroke="black" d="M13682.01,-2747.4C13745.01,-2729.5 13855.01,-2697.7 13923.01,-2678.4"/>
<polygon fill="black" stroke="black" points="13924.33,-2681.67 13933.01,-2675.6 13922.44,-2674.93 13924.33,-2681.67"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_biproducts_of_shape -->
<g id="node429" class="node">
<title>category_theory.limits.preserves_biproducts_of_shape</title>
<g id="a_node429"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_biproducts_of_shape" xlink:title="category_theory.limits.preserves_biproducts_of_shape">
<polygon fill="none" stroke="black" points="13157.51,-1161 12706.51,-1161 12706.51,-1130 13157.51,-1130 13157.51,-1161"/>
<text text-anchor="middle" x="12932.01" y="-1141.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.preserves_biproducts_of_shape</text>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_biproducts_of_shape&#45;&gt;category_theory.limits.preserves_biproduct -->
<g id="edge807" class="edge">
<title>category_theory.limits.preserves_biproducts_of_shape&#45;&gt;category_theory.limits.preserves_biproduct</title>
<g id="a_edge807"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_biproducts_of_shape.preserves" xlink:title="category_theory.limits.preserves_biproducts_of_shape.preserves">
<path fill="none" stroke="black" d="M12964.01,-1131.4C13005.01,-1113.8 13077.01,-1082.9 13123.01,-1063.5"/>
<polygon fill="black" stroke="black" points="13124.23,-1066.79 13132.01,-1059.6 13121.45,-1060.36 13124.23,-1066.79"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_biproducts -->
<g id="node430" class="node">
<title>category_theory.limits.preserves_biproducts</title>
<g id="a_node430"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_biproducts" xlink:title="category_theory.limits.preserves_biproducts">
<polygon fill="none" stroke="black" points="13132.51,-1464 12757.51,-1464 12757.51,-1433 13132.51,-1433 13132.51,-1464"/>
<text text-anchor="middle" x="12945.01" y="-1444.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.preserves_biproducts</text>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_biproducts&#45;&gt;category_theory.limits.preserves_biproducts_of_shape -->
<g id="edge808" class="edge">
<title>category_theory.limits.preserves_biproducts&#45;&gt;category_theory.limits.preserves_biproducts_of_shape</title>
<g id="a_edge808"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_biproducts.preserves" xlink:title="category_theory.limits.preserves_biproducts.preserves">
<path fill="none" stroke="black" d="M12849.01,-1434.5C12805.01,-1423 12758.01,-1401.8 12731.01,-1362.5 12676.01,-1280.8 12818.01,-1199.9 12891.01,-1165"/>
<polygon fill="black" stroke="black" points="12893.33,-1167.8 12901.01,-1160.5 12890.46,-1161.41 12893.33,-1167.8"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_finite_biproducts -->
<g id="node431" class="node">
<title>category_theory.limits.preserves_finite_biproducts</title>
<g id="a_node431"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_finite_biproducts" xlink:title="category_theory.limits.preserves_finite_biproducts">
<polygon fill="none" stroke="black" points="13171.01,-1363 12737.01,-1363 12737.01,-1332 13171.01,-1332 13171.01,-1363"/>
<text text-anchor="middle" x="12954.01" y="-1343.8" font-family="Courier,monospace" font-size="14.00">category_theory.limits.preserves_finite_biproducts</text>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_biproducts&#45;&gt;category_theory.limits.preserves_finite_biproducts -->
<g id="edge809" class="edge">
<title>category_theory.limits.preserves_biproducts&#45;&gt;category_theory.limits.preserves_finite_biproducts</title>
<g id="a_edge809"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_finite_biproducts_of_preserves_biproducts" xlink:title="category_theory.limits.preserves_finite_biproducts_of_preserves_biproducts">
<path fill="none" stroke="black" d="M12946.01,-1434.2C12948.01,-1418.3 12950.01,-1392 12952.01,-1372.7"/>
<polygon fill="black" stroke="black" points="12955.51,-1372.9 12953.01,-1362.6 12948.55,-1372.21 12955.51,-1372.9"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_finite_biproducts.preserves -->
<g id="node432" class="node">
<title>category_theory.limits.preserves_finite_biproducts.preserves</title>
<g id="a_node432"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_finite_biproducts.preserves" xlink:title="category_theory.limits.preserves_finite_biproducts.preserves">
<ellipse fill="black" stroke="black" cx="12954.01" cy="-1246.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_finite_biproducts&#45;&gt;category_theory.limits.preserves_finite_biproducts.preserves -->
<g id="edge810" class="edge">
<title>category_theory.limits.preserves_finite_biproducts&#45;&gt;category_theory.limits.preserves_finite_biproducts.preserves</title>
<g id="a_edge810"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_finite_biproducts.preserves" xlink:title="category_theory.limits.preserves_finite_biproducts.preserves">
<path fill="none" stroke="black" d="M12954.01,-1333.2C12954.01,-1313.2 12954.01,-1276.3 12954.01,-1258.4"/>
<polygon fill="black" stroke="black" points="12957.51,-1258.2 12954.01,-1248.2 12950.51,-1258.2 12957.51,-1258.2"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_finite_biproducts.preserves&#45;&gt;category_theory.limits.preserves_biproducts_of_shape -->
<g id="edge811" class="edge">
<title>category_theory.limits.preserves_finite_biproducts.preserves&#45;&gt;category_theory.limits.preserves_biproducts_of_shape</title>
<g id="a_edge811"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_finite_biproducts.preserves" xlink:title="category_theory.limits.preserves_finite_biproducts.preserves">
<path fill="none" stroke="black" d="M12954.01,-1245.9C12954.01,-1243.9 12944.01,-1199.5 12937.01,-1170.9"/>
<polygon fill="black" stroke="black" points="12940.39,-1169.93 12935.01,-1160.8 12933.52,-1171.29 12940.39,-1169.93"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limits_of_shape&#45;&gt;category_theory.functor.preserves_monomorphisms -->
<g id="edge813" class="edge">
<title>category_theory.limits.preserves_limits_of_shape&#45;&gt;category_theory.functor.preserves_monomorphisms</title>
<g id="a_edge813"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.preserves_monomorphisms_of_preserves_limits_of_shape" xlink:title="category_theory.preserves_monomorphisms_of_preserves_limits_of_shape">
<path fill="none" stroke="black" d="M7930.31,-627.02C7927.21,-626.84 7924.11,-626.66 7921.01,-626.48 7403.51,-596.84 6794.61,-566.5 6480.41,-551.18"/>
<polygon fill="black" stroke="black" points="6480.47,-547.68 6470.31,-550.68 6480.13,-554.67 6480.47,-547.68"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_preserves_limits_of_shape -->
<g id="node434" class="node">
<title>category_theory.limits.comp_preserves_limits_of_shape</title>
<g id="a_node434"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_limits_of_shape" xlink:title="category_theory.limits.comp_preserves_limits_of_shape">
<ellipse fill="black" stroke="black" cx="8036.01" cy="-539.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limits_of_shape&#45;&gt;category_theory.limits.comp_preserves_limits_of_shape -->
<g id="edge814" class="edge">
<title>category_theory.limits.preserves_limits_of_shape&#45;&gt;category_theory.limits.comp_preserves_limits_of_shape</title>
<g id="a_edge814"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_limits_of_shape" xlink:title="category_theory.limits.comp_preserves_limits_of_shape">
<path fill="none" stroke="black" d="M8106.61,-626.47C8082.41,-610.42 8050.51,-582.28 8027.01,-554.48 8023.71,-550.55 8020.51,-545.36 8025.51,-542.71"/>
<polygon fill="black" stroke="black" points="8026.35,-546.12 8035.61,-540.98 8025.17,-539.22 8026.35,-546.12"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limits_of_shape&#45;&gt;category_theory.limits.comp_preserves_limits_of_shape -->
<g id="edge815" class="edge">
<title>category_theory.limits.preserves_limits_of_shape&#45;&gt;category_theory.limits.comp_preserves_limits_of_shape</title>
<g id="a_edge815"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_limits_of_shape" xlink:title="category_theory.limits.comp_preserves_limits_of_shape">
<path fill="none" stroke="black" d="M8119.51,-626.47C8100.41,-610.42 8068.51,-582.28 8045.01,-554.48 8043.81,-553.03 8042.61,-551.4 8041.51,-549.8"/>
<polygon fill="black" stroke="black" points="8044.31,-547.67 8036.01,-541.07 8038.38,-551.4 8044.31,-547.67"/>
</a>
</g>
</g>
<!-- category_theory.exponential_ideal -->
<g id="node435" class="node">
<title>category_theory.exponential_ideal</title>
<g id="a_node435"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.exponential_ideal" xlink:title="category_theory.exponential_ideal">
<polygon fill="none" stroke="black" points="8343.51,-554.98 8052.51,-554.98 8052.51,-523.98 8343.51,-523.98 8343.51,-554.98"/>
<text text-anchor="middle" x="8198.01" y="-535.78" font-family="Courier,monospace" font-size="14.00">category_theory.exponential_ideal</text>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_limits_of_shape&#45;&gt;category_theory.exponential_ideal -->
<g id="edge816" class="edge">
<title>category_theory.limits.preserves_limits_of_shape&#45;&gt;category_theory.exponential_ideal</title>
<g id="a_edge816"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.exponential_ideal_of_preserves_binary_products" xlink:title="category_theory.exponential_ideal_of_preserves_binary_products">
<path fill="none" stroke="black" d="M8144.61,-626.21C8154.81,-609.89 8172.01,-582.45 8184.11,-563.12"/>
<polygon fill="black" stroke="black" points="8187.1,-564.95 8189.51,-554.63 8181.19,-561.19 8187.1,-564.95"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_preserves_limits_of_shape&#45;&gt;category_theory.limits.preserves_limits_of_shape -->
<g id="edge1210" class="edge">
<title>category_theory.limits.comp_preserves_limits_of_shape&#45;&gt;category_theory.limits.preserves_limits_of_shape</title>
<g id="a_edge1210"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_limits_of_shape" xlink:title="category_theory.limits.comp_preserves_limits_of_shape">
<path fill="none" stroke="black" d="M8036.41,-540.98C8054.11,-541.1 8058.41,-549.02 8063.01,-554.48 8083.21,-578.37 8109.61,-602.51 8125.51,-619.02"/>
<polygon fill="black" stroke="black" points="8123.05,-621.51 8132.41,-626.47 8128.19,-616.75 8123.05,-621.51"/>
</a>
</g>
</g>
<!-- is_directed -->
<g id="node436" class="node">
<title>is_directed</title>
<g id="a_node436"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/is_directed" xlink:title="is_directed">
<polygon fill="none" stroke="black" points="12436.01,-1060 12330.01,-1060 12330.01,-1029 12436.01,-1029 12436.01,-1060"/>
<text text-anchor="middle" x="12383.01" y="-1040.8" font-family="Courier,monospace" font-size="14.00">is_directed</text>
</a>
</g>
</g>
<!-- is_directed&#45;&gt;category_theory.is_cofiltered_of_directed_ge_nonempty -->
<g id="edge817" class="edge">
<title>is_directed&#45;&gt;category_theory.is_cofiltered_of_directed_ge_nonempty</title>
<g id="a_edge817"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_cofiltered_of_directed_ge_nonempty" xlink:title="category_theory.is_cofiltered_of_directed_ge_nonempty">
<path fill="none" stroke="black" d="M12330.01,-1041.8C12144.01,-1033.8 11523.01,-1003.8 11447.01,-958.48 11445.01,-957.45 11444.01,-955.95 11443.01,-954.32"/>
<polygon fill="black" stroke="black" points="11445.85,-952.22 11438.01,-945.09 11439.7,-955.55 11445.85,-952.22"/>
</a>
</g>
</g>
<!-- is_directed&#45;&gt;category_theory.is_filtered_of_directed_le_nonempty -->
<g id="edge818" class="edge">
<title>is_directed&#45;&gt;category_theory.is_filtered_of_directed_le_nonempty</title>
<g id="a_edge818"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_filtered_of_directed_le_nonempty" xlink:title="category_theory.is_filtered_of_directed_le_nonempty">
<path fill="none" stroke="black" d="M12330.01,-1041.9C12142.01,-1034.1 11507.01,-1004.7 11429.01,-958.48 11427.01,-957.45 11426.01,-955.95 11425.01,-954.32"/>
<polygon fill="black" stroke="black" points="11427.85,-952.22 11420.01,-945.09 11421.7,-955.55 11427.85,-952.22"/>
</a>
</g>
</g>
<!-- is_directed&#45;&gt;category_theory.is_cofiltered_or_empty -->
<g id="edge819" class="edge">
<title>is_directed&#45;&gt;category_theory.is_cofiltered_or_empty</title>
<g id="a_edge819"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_cofiltered_or_empty_of_directed_ge" xlink:title="category_theory.is_cofiltered_or_empty_of_directed_ge">
<path fill="none" stroke="black" d="M12436.01,-1036.5C12451.01,-1034.4 12468.01,-1032.3 12483.01,-1030.5 12565.01,-1020.9 13170.01,-1019.9 13226.01,-958.48 13265.01,-915.7 13265.01,-870.85 13226.01,-828.48 13162.01,-759.99 12571.01,-746.06 12270.01,-743.44"/>
<polygon fill="black" stroke="black" points="12270.05,-739.94 12260.01,-743.35 12269.98,-746.94 12270.05,-739.94"/>
</a>
</g>
</g>
<!-- is_directed&#45;&gt;category_theory.is_filtered_or_empty -->
<g id="edge820" class="edge">
<title>is_directed&#45;&gt;category_theory.is_filtered_or_empty</title>
<g id="a_edge820"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.is_filtered_or_empty_of_directed_le" xlink:title="category_theory.is_filtered_or_empty_of_directed_le">
<path fill="none" stroke="black" d="M12436.01,-1036.5C12451.01,-1034.5 12468.01,-1032.3 12483.01,-1030.5 12641.01,-1011.8 13262.01,-1073.3 13193.01,-929.48 13162.01,-865.03 13135.01,-853.91 13068.01,-828.48 13031.01,-814.36 11901.01,-767.25 11468.01,-749.67"/>
<polygon fill="black" stroke="black" points="11468.15,-746.17 11458.01,-749.26 11467.86,-753.17 11468.15,-746.17"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimits_of_shape&#45;&gt;category_theory.functor.preserves_epimorphisms -->
<g id="edge1225" class="edge">
<title>category_theory.limits.preserves_colimits_of_shape&#45;&gt;category_theory.functor.preserves_epimorphisms</title>
<g id="a_edge1225"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.preserves_epimorphisms_of_preserves_colimits_of_shape" xlink:title="category_theory.preserves_epimorphisms_of_preserves_colimits_of_shape">
<path fill="none" stroke="black" d="M7571.01,-626.47C7395.31,-607.92 7080.41,-574.69 6899.31,-555.58"/>
<polygon fill="black" stroke="black" points="6899.53,-552.08 6889.21,-554.51 6898.79,-559.04 6899.53,-552.08"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_preserves_colimits_of_shape -->
<g id="node617" class="node">
<title>category_theory.limits.comp_preserves_colimits_of_shape</title>
<g id="a_node617"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_colimits_of_shape" xlink:title="category_theory.limits.comp_preserves_colimits_of_shape">
<ellipse fill="black" stroke="black" cx="7699.01" cy="-539.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimits_of_shape&#45;&gt;category_theory.limits.comp_preserves_colimits_of_shape -->
<g id="edge1226" class="edge">
<title>category_theory.limits.preserves_colimits_of_shape&#45;&gt;category_theory.limits.comp_preserves_colimits_of_shape</title>
<g id="a_edge1226"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_colimits_of_shape" xlink:title="category_theory.limits.comp_preserves_colimits_of_shape">
<path fill="none" stroke="black" d="M7689.31,-626.21C7683.61,-604.92 7684.31,-564.72 7691.51,-548.28"/>
<polygon fill="black" stroke="black" points="7694.18,-550.56 7698.71,-540.99 7689.2,-545.65 7694.18,-550.56"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimits_of_shape&#45;&gt;category_theory.limits.comp_preserves_colimits_of_shape -->
<g id="edge1227" class="edge">
<title>category_theory.limits.preserves_colimits_of_shape&#45;&gt;category_theory.limits.comp_preserves_colimits_of_shape</title>
<g id="a_edge1227"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_colimits_of_shape" xlink:title="category_theory.limits.comp_preserves_colimits_of_shape">
<path fill="none" stroke="black" d="M7699.01,-626.21C7699.01,-606.14 7699.01,-569.28 7699.01,-551.34"/>
<polygon fill="black" stroke="black" points="7702.51,-551.15 7699.01,-541.15 7695.51,-551.15 7702.51,-551.15"/>
</a>
</g>
</g>
<!-- first_order.language.is_algebraic -->
<g id="node439" class="node">
<title>first_order.language.is_algebraic</title>
<g id="a_node439"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.is_algebraic" xlink:title="first_order.language.is_algebraic">
<polygon fill="none" stroke="black" points="16343.51,-2272 16052.51,-2272 16052.51,-2241 16343.51,-2241 16343.51,-2272"/>
<text text-anchor="middle" x="16198.01" y="-2252.8" font-family="Courier,monospace" font-size="14.00">first_order.language.is_algebraic</text>
</a>
</g>
</g>
<!-- first_order.language.is_algebraic_sum -->
<g id="node440" class="node">
<title>first_order.language.is_algebraic_sum</title>
<g id="a_node440"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.is_algebraic_sum" xlink:title="first_order.language.is_algebraic_sum">
<ellipse fill="black" stroke="black" cx="16210.01" cy="-2155.5" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- first_order.language.is_algebraic&#45;&gt;first_order.language.is_algebraic_sum -->
<g id="edge826" class="edge">
<title>first_order.language.is_algebraic&#45;&gt;first_order.language.is_algebraic_sum</title>
<g id="a_edge826"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.is_algebraic_sum" xlink:title="first_order.language.is_algebraic_sum">
<path fill="none" stroke="black" d="M16190.01,-2242.2C16187.01,-2220.7 16193.01,-2179.9 16202.01,-2163.8"/>
<polygon fill="black" stroke="black" points="16204.66,-2166.14 16210.01,-2157 16200.13,-2160.81 16204.66,-2166.14"/>
</a>
</g>
</g>
<!-- first_order.language.is_algebraic&#45;&gt;first_order.language.is_algebraic_sum -->
<g id="edge827" class="edge">
<title>first_order.language.is_algebraic&#45;&gt;first_order.language.is_algebraic_sum</title>
<g id="a_edge827"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.is_algebraic_sum" xlink:title="first_order.language.is_algebraic_sum">
<path fill="none" stroke="black" d="M16200.01,-2242.2C16202.01,-2222.2 16207.01,-2185.3 16209.01,-2167.4"/>
<polygon fill="black" stroke="black" points="16212.52,-2167.49 16210.01,-2157.2 16205.55,-2166.81 16212.52,-2167.49"/>
</a>
</g>
</g>
<!-- first_order.language.is_algebraic_sum&#45;&gt;first_order.language.is_algebraic -->
<g id="edge828" class="edge">
<title>first_order.language.is_algebraic_sum&#45;&gt;first_order.language.is_algebraic</title>
<g id="a_edge828"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/first_order.language.is_algebraic_sum" xlink:title="first_order.language.is_algebraic_sum">
<path fill="none" stroke="black" d="M16210.01,-2157C16222.01,-2157.8 16221.01,-2203.4 16213.01,-2232.4"/>
<polygon fill="black" stroke="black" points="16209.55,-2231.62 16209.01,-2242.2 16216.03,-2234.26 16209.55,-2231.62"/>
</a>
</g>
</g>
<!-- add_zero_class -->
<g id="node443" class="node">
<title>add_zero_class</title>
<g id="a_node443"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_zero_class" xlink:title="add_zero_class">
<polygon fill="none" stroke="black" points="8779.01,-2071 8647.01,-2071 8647.01,-2040 8779.01,-2040 8779.01,-2071"/>
<text text-anchor="middle" x="8713.01" y="-2051.8" font-family="Courier,monospace" font-size="14.00">add_zero_class</text>
</a>
</g>
</g>
<!-- add_monoid&#45;&gt;add_zero_class -->
<g id="edge831" class="edge">
<title>add_monoid&#45;&gt;add_zero_class</title>
<g id="a_edge831"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_monoid.to_add_zero_class" xlink:title="add_monoid.to_add_zero_class">
<path fill="none" stroke="black" d="M8713.01,-2141.2C8713.01,-2125.3 8713.01,-2099 8713.01,-2079.7"/>
<polygon fill="black" stroke="black" points="8716.51,-2079.6 8713.01,-2069.6 8709.51,-2079.6 8716.51,-2079.6"/>
</a>
</g>
</g>
<!-- add_semigroup -->
<g id="node444" class="node">
<title>add_semigroup</title>
<g id="a_node444"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_semigroup" xlink:title="add_semigroup">
<polygon fill="none" stroke="black" points="8593.51,-2071 8470.51,-2071 8470.51,-2040 8593.51,-2040 8593.51,-2071"/>
<text text-anchor="middle" x="8532.01" y="-2051.8" font-family="Courier,monospace" font-size="14.00">add_semigroup</text>
</a>
</g>
</g>
<!-- add_monoid&#45;&gt;add_semigroup -->
<g id="edge832" class="edge">
<title>add_monoid&#45;&gt;add_semigroup</title>
<g id="a_edge832"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_monoid.to_add_semigroup" xlink:title="add_monoid.to_add_semigroup">
<path fill="none" stroke="black" d="M8688.21,-2141.4C8656.51,-2124.1 8601.41,-2093.9 8565.81,-2074.5"/>
<polygon fill="black" stroke="black" points="8567.27,-2071.31 8556.81,-2069.6 8563.92,-2077.46 8567.27,-2071.31"/>
</a>
</g>
</g>
<!-- add_left_cancel_semigroup&#45;&gt;add_semigroup -->
<g id="edge833" class="edge">
<title>add_left_cancel_semigroup&#45;&gt;add_semigroup</title>
<g id="a_edge833"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_left_cancel_semigroup.to_add_semigroup" xlink:title="add_left_cancel_semigroup.to_add_semigroup">
<path fill="none" stroke="black" d="M8166.11,-2141.4C8243.91,-2123.3 8381.71,-2091.1 8464.21,-2071.8"/>
<polygon fill="black" stroke="black" points="8465.02,-2075.21 8474.01,-2069.6 8463.49,-2068.38 8465.02,-2075.21"/>
</a>
</g>
</g>
<!-- add_zero_class&#45;&gt;has_add -->
<g id="edge834" class="edge">
<title>add_zero_class&#45;&gt;has_add</title>
<g id="a_edge834"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_zero_class.to_has_add" xlink:title="add_zero_class.to_has_add">
<path fill="none" stroke="black" d="M8713.01,-2040.2C8713.01,-2024.3 8713.01,-1998 8713.01,-1978.7"/>
<polygon fill="black" stroke="black" points="8716.51,-1978.6 8713.01,-1968.6 8709.51,-1978.6 8716.51,-1978.6"/>
</a>
</g>
</g>
<!-- add_zero_class&#45;&gt;has_zero -->
<g id="edge835" class="edge">
<title>add_zero_class&#45;&gt;has_zero</title>
<g id="a_edge835"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_zero_class.to_has_zero" xlink:title="add_zero_class.to_has_zero">
<path fill="none" stroke="black" d="M8778.21,-2050.2C9053.71,-2034.2 10119.01,-1972.3 10365.01,-1958"/>
<polygon fill="black" stroke="black" points="10365.24,-1961.49 10375.01,-1957.4 10364.82,-1954.51 10365.24,-1961.49"/>
</a>
</g>
</g>
<!-- add_semigroup&#45;&gt;has_add -->
<g id="edge836" class="edge">
<title>add_semigroup&#45;&gt;has_add</title>
<g id="a_edge836"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_semigroup.to_has_add" xlink:title="add_semigroup.to_has_add">
<path fill="none" stroke="black" d="M8556.81,-2040.4C8588.51,-2023.1 8643.61,-1992.9 8679.21,-1973.5"/>
<polygon fill="black" stroke="black" points="8681.1,-1976.46 8688.21,-1968.6 8677.76,-1970.31 8681.1,-1976.46"/>
</a>
</g>
</g>
<!-- has_zero&#45;&gt;nonempty -->
<g id="edge887" class="edge">
<title>has_zero&#45;&gt;nonempty</title>
<g id="a_edge887"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/has_zero.nonempty" xlink:title="has_zero.nonempty">
<path fill="none" stroke="black" d="M10427.01,-1939.3C10450.01,-1908.2 10503.01,-1828.7 10503.01,-1753 10503.01,-1753 10503.01,-1753 10503.01,-1549 10503.01,-1266.9 10755.01,-1299.9 10981.01,-1131.5 11015.01,-1106.3 11056.01,-1081.1 11084.01,-1064.6"/>
<polygon fill="black" stroke="black" points="11085.97,-1067.52 11093.01,-1059.6 11082.57,-1061.4 11085.97,-1067.52"/>
</a>
</g>
</g>
<!-- add_comm_semigroup&#45;&gt;add_semigroup -->
<g id="edge841" class="edge">
<title>add_comm_semigroup&#45;&gt;add_semigroup</title>
<g id="a_edge841"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_comm_semigroup.to_add_semigroup" xlink:title="add_comm_semigroup.to_add_semigroup">
<path fill="none" stroke="black" d="M8347.31,-2141.4C8385.31,-2123.9 8451.61,-2093.2 8493.61,-2073.8"/>
<polygon fill="black" stroke="black" points="8495.1,-2076.97 8502.71,-2069.6 8492.17,-2070.61 8495.1,-2076.97"/>
</a>
</g>
</g>
<!-- add_right_cancel_monoid&#45;&gt;add_monoid -->
<g id="edge842" class="edge">
<title>add_right_cancel_monoid&#45;&gt;add_monoid</title>
<g id="a_edge842"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_right_cancel_monoid.to_add_monoid" xlink:title="add_right_cancel_monoid.to_add_monoid">
<path fill="none" stroke="black" d="M8520.51,-2242.4C8560.21,-2224.8 8629.61,-2194 8673.31,-2174.6"/>
<polygon fill="black" stroke="black" points="8674.74,-2177.8 8682.51,-2170.6 8671.95,-2171.38 8674.74,-2177.8"/>
</a>
</g>
</g>
<!-- add_right_cancel_semigroup -->
<g id="node448" class="node">
<title>add_right_cancel_semigroup</title>
<g id="a_node448"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_right_cancel_semigroup" xlink:title="add_right_cancel_semigroup">
<polygon fill="none" stroke="black" points="8648.01,-2171 8416.01,-2171 8416.01,-2140 8648.01,-2140 8648.01,-2171"/>
<text text-anchor="middle" x="8532.01" y="-2151.8" font-family="Courier,monospace" font-size="14.00">add_right_cancel_semigroup</text>
</a>
</g>
</g>
<!-- add_right_cancel_monoid&#45;&gt;add_right_cancel_semigroup -->
<g id="edge843" class="edge">
<title>add_right_cancel_monoid&#45;&gt;add_right_cancel_semigroup</title>
<g id="a_edge843"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_right_cancel_monoid.to_add_right_cancel_semigroup" xlink:title="add_right_cancel_monoid.to_add_right_cancel_semigroup">
<path fill="none" stroke="black" d="M8495.81,-2242.2C8502.71,-2226.1 8514.11,-2199.2 8522.31,-2179.9"/>
<polygon fill="black" stroke="black" points="8525.57,-2181.18 8526.21,-2170.6 8519.12,-2178.47 8525.57,-2181.18"/>
</a>
</g>
</g>
<!-- add_right_cancel_semigroup&#45;&gt;add_semigroup -->
<g id="edge1758" class="edge">
<title>add_right_cancel_semigroup&#45;&gt;add_semigroup</title>
<g id="a_edge1758"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/add_right_cancel_semigroup.to_add_semigroup" xlink:title="add_right_cancel_semigroup.to_add_semigroup">
<path fill="none" stroke="black" d="M8532.01,-2141.2C8532.01,-2125.3 8532.01,-2099 8532.01,-2079.7"/>
<polygon fill="black" stroke="black" points="8535.51,-2079.6 8532.01,-2069.6 8528.51,-2079.6 8535.51,-2079.6"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_colimit&#45;&gt;category_theory.functor.final.comp_has_colimit -->
<g id="edge845" class="edge">
<title>category_theory.limits.has_colimit&#45;&gt;category_theory.functor.final.comp_has_colimit</title>
<g id="a_edge845"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.final.comp_has_colimit" xlink:title="category_theory.functor.final.comp_has_colimit">
<path fill="none" stroke="black" d="M6205.81,-1030.5C6105.91,-1017.9 5985.91,-995.4 5952.01,-958.48 5896.51,-898 5915.11,-784.69 5927.51,-752.01"/>
<polygon fill="black" stroke="black" points="5930.69,-753.5 5932.61,-743.08 5924.62,-750.03 5930.69,-753.5"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_colimit&#45;&gt;category_theory.limits.has_colimit -->
<g id="edge844" class="edge">
<title>category_theory.limits.has_colimit&#45;&gt;category_theory.limits.has_colimit</title>
<g id="a_edge844"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.has_colimit_equivalence_comp" xlink:title="category_theory.limits.has_colimit_equivalence_comp">
<path fill="none" stroke="black" d="M6404.11,-1059.6C6457.71,-1068.3 6517.51,-1063.4 6517.51,-1045 6517.51,-1027.7 6464.91,-1022.4 6414.21,-1028.9"/>
<polygon fill="black" stroke="black" points="6413.49,-1025.47 6404.11,-1030.4 6414.52,-1032.39 6413.49,-1025.47"/>
</a>
</g>
</g>
<!-- category_theory.preserves_colimit_of_creates_colimit_and_has_colimit -->
<g id="node450" class="node">
<title>category_theory.preserves_colimit_of_creates_colimit_and_has_colimit</title>
<g id="a_node450"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.preserves_colimit_of_creates_colimit_and_has_colimit" xlink:title="category_theory.preserves_colimit_of_creates_colimit_and_has_colimit">
<ellipse fill="black" stroke="black" cx="6747.01" cy="-943.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.has_colimit&#45;&gt;category_theory.preserves_colimit_of_creates_colimit_and_has_colimit -->
<g id="edge846" class="edge">
<title>category_theory.limits.has_colimit&#45;&gt;category_theory.preserves_colimit_of_creates_colimit_and_has_colimit</title>
<g id="a_edge846"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.preserves_colimit_of_creates_colimit_and_has_colimit" xlink:title="category_theory.preserves_colimit_of_creates_colimit_and_has_colimit">
<path fill="none" stroke="black" d="M6448.51,-1030.4C6546.51,-1015.3 6690.11,-988.92 6737.01,-958.48 6738.81,-957.29 6740.51,-955.64 6741.81,-953.9"/>
<polygon fill="black" stroke="black" points="6744.95,-955.48 6747.01,-945.09 6738.92,-951.92 6744.95,-955.48"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimit -->
<g id="node451" class="node">
<title>category_theory.limits.preserves_colimit</title>
<g id="a_node451"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.preserves_colimit" xlink:title="category_theory.limits.preserves_colimit">
<polygon fill="none" stroke="black" points="6391.01,-857.98 6041.01,-857.98 6041.01,-826.98 6391.01,-826.98 6391.01,-857.98"/>
<text text-anchor="middle" x="6216.01" y="-838.78" font-family="Courier,monospace" font-size="14.00">category_theory.limits.preserves_colimit</text>
</a>
</g>
</g>
<!-- category_theory.preserves_colimit_of_creates_colimit_and_has_colimit&#45;&gt;category_theory.limits.preserves_colimit -->
<g id="edge848" class="edge">
<title>category_theory.preserves_colimit_of_creates_colimit_and_has_colimit&#45;&gt;category_theory.limits.preserves_colimit</title>
<g id="a_edge848"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.preserves_colimit_of_creates_colimit_and_has_colimit" xlink:title="category_theory.preserves_colimit_of_creates_colimit_and_has_colimit">
<path fill="none" stroke="black" d="M6747.01,-942.87C6746.51,-941.8 6743.01,-933.13 6737.01,-929.48 6680.01,-894.7 6519.21,-871.82 6391.11,-858.55"/>
<polygon fill="black" stroke="black" points="6391.12,-855.03 6380.81,-857.5 6390.41,-862 6391.12,-855.03"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimit&#45;&gt;category_theory.is_iso -->
<g id="edge849" class="edge">
<title>category_theory.limits.preserves_colimit&#45;&gt;category_theory.is_iso</title>
<g id="a_edge849"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.coequalizer_comparison.category_theory.is_iso" xlink:title="category_theory.limits.coequalizer_comparison.category_theory.is_iso">
<path fill="none" stroke="black" d="M6043.41,-832.2C6025.21,-830.91 6007.11,-829.64 5990.01,-828.48 5742.21,-811.77 5006.61,-768.39 4726.51,-750.68"/>
<polygon fill="black" stroke="black" points="4726.62,-747.18 4716.41,-750.04 4726.17,-754.17 4726.62,-747.18"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimit&#45;&gt;category_theory.is_iso -->
<g id="edge850" class="edge">
<title>category_theory.limits.preserves_colimit&#45;&gt;category_theory.is_iso</title>
<g id="a_edge850"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.pushout_comparison.category_theory.is_iso" xlink:title="category_theory.limits.pushout_comparison.category_theory.is_iso">
<path fill="none" stroke="black" d="M6043.41,-830.93C6031.41,-830.08 6019.51,-829.25 6008.01,-828.48 5757.51,-811.58 5008.31,-767.43 4726.41,-750.1"/>
<polygon fill="black" stroke="black" points="4726.31,-746.59 4716.11,-749.47 4725.88,-753.57 4726.31,-746.59"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimit&#45;&gt;category_theory.is_iso -->
<g id="edge851" class="edge">
<title>category_theory.limits.preserves_colimit&#45;&gt;category_theory.is_iso</title>
<g id="a_edge851"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.coprod_comparison.category_theory.is_iso" xlink:title="category_theory.limits.coprod_comparison.category_theory.is_iso">
<path fill="none" stroke="black" d="M6043.21,-829.66C6037.41,-829.26 6031.71,-828.86 6026.01,-828.48 5772.91,-811.41 5010.81,-766.52 4726.51,-749.58"/>
<polygon fill="black" stroke="black" points="4726.3,-746.06 4716.11,-748.96 4725.89,-753.05 4726.3,-746.06"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimit&#45;&gt;category_theory.is_iso -->
<g id="edge852" class="edge">
<title>category_theory.limits.preserves_colimit&#45;&gt;category_theory.is_iso</title>
<g id="a_edge852"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.initial_comparison.category_theory.is_iso" xlink:title="category_theory.limits.initial_comparison.category_theory.is_iso">
<path fill="none" stroke="black" d="M6044.51,-828.51C6044.31,-828.5 6044.21,-828.49 6044.01,-828.48 5788.41,-811.24 5013.31,-765.61 4726.31,-749.07"/>
<polygon fill="black" stroke="black" points="4726.5,-745.57 4716.31,-748.5 4726.1,-752.56 4726.5,-745.57"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimit&#45;&gt;category_theory.is_iso -->
<g id="edge853" class="edge">
<title>category_theory.limits.preserves_colimit&#45;&gt;category_theory.is_iso</title>
<g id="a_edge853"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.sigma_comparison.category_theory.is_iso" xlink:title="category_theory.limits.sigma_comparison.category_theory.is_iso">
<path fill="none" stroke="black" d="M6062.51,-828.51C6062.31,-828.5 6062.21,-828.49 6062.01,-828.48 5803.91,-811.07 5016.51,-764.74 4726.41,-748.61"/>
<polygon fill="black" stroke="black" points="4726.49,-745.11 4716.31,-748.05 4726.1,-752.1 4726.49,-745.11"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimit&#45;&gt;category_theory.is_iso -->
<g id="edge854" class="edge">
<title>category_theory.limits.preserves_colimit&#45;&gt;category_theory.is_iso</title>
<g id="a_edge854"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.cokernel_comparison.category_theory.is_iso" xlink:title="category_theory.limits.cokernel_comparison.category_theory.is_iso">
<path fill="none" stroke="black" d="M6080.51,-828.51C6080.31,-828.5 6080.21,-828.49 6080.01,-828.48 5819.71,-810.92 5020.61,-763.92 4726.61,-748.19"/>
<polygon fill="black" stroke="black" points="4726.59,-744.68 4716.41,-747.64 4726.21,-751.67 4726.59,-744.68"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimit&#45;&gt;category_theory.limits.category_theory.functor.map.has_cokernel -->
<g id="edge855" class="edge">
<title>category_theory.limits.preserves_colimit&#45;&gt;category_theory.limits.category_theory.functor.map.has_cokernel</title>
<g id="a_edge855"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.category_theory.functor.map.has_cokernel" xlink:title="category_theory.limits.category_theory.functor.map.has_cokernel">
<path fill="none" stroke="black" d="M6262.51,-828.39C6350.61,-803.37 6547.91,-750.44 6718.01,-727.48 6897.91,-703.2 8213.71,-775.3 8350.01,-655.48 8388.81,-621.38 8370.01,-592.64 8370.01,-540.98 8370.01,-540.98 8370.01,-540.98 8370.01,-235.98 8370.01,-92.37 5884.21,-53.25 5705.21,-50.62"/>
<polygon fill="black" stroke="black" points="5705.16,-47.12 5695.11,-50.48 5705.06,-54.12 5705.16,-47.12"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_preserves_colimit -->
<g id="node452" class="node">
<title>category_theory.limits.comp_preserves_colimit</title>
<g id="a_node452"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_colimit" xlink:title="category_theory.limits.comp_preserves_colimit">
<ellipse fill="black" stroke="black" cx="6216.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimit&#45;&gt;category_theory.limits.comp_preserves_colimit -->
<g id="edge856" class="edge">
<title>category_theory.limits.preserves_colimit&#45;&gt;category_theory.limits.comp_preserves_colimit</title>
<g id="a_edge856"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_colimit" xlink:title="category_theory.limits.comp_preserves_colimit">
<path fill="none" stroke="black" d="M6206.31,-828.21C6200.61,-806.92 6201.31,-766.72 6208.51,-750.28"/>
<polygon fill="black" stroke="black" points="6211.18,-752.56 6215.71,-742.99 6206.2,-747.65 6211.18,-752.56"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimit&#45;&gt;category_theory.limits.comp_preserves_colimit -->
<g id="edge857" class="edge">
<title>category_theory.limits.preserves_colimit&#45;&gt;category_theory.limits.comp_preserves_colimit</title>
<g id="a_edge857"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_colimit" xlink:title="category_theory.limits.comp_preserves_colimit">
<path fill="none" stroke="black" d="M6216.01,-828.21C6216.01,-808.14 6216.01,-771.28 6216.01,-753.34"/>
<polygon fill="black" stroke="black" points="6219.51,-753.15 6216.01,-743.15 6212.51,-753.15 6219.51,-753.15"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_zero_morphisms_of_preserves_initial_object -->
<g id="node453" class="node">
<title>category_theory.functor.preserves_zero_morphisms_of_preserves_initial_object</title>
<g id="a_node453"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_zero_morphisms_of_preserves_initial_object" xlink:title="category_theory.functor.preserves_zero_morphisms_of_preserves_initial_object">
<ellipse fill="black" stroke="black" cx="6054.01" cy="-741.48" rx="0" ry="0"/>
</a>
</g>
</g>
<!-- category_theory.limits.preserves_colimit&#45;&gt;category_theory.functor.preserves_zero_morphisms_of_preserves_initial_object -->
<g id="edge858" class="edge">
<title>category_theory.limits.preserves_colimit&#45;&gt;category_theory.functor.preserves_zero_morphisms_of_preserves_initial_object</title>
<g id="a_edge858"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_zero_morphisms_of_preserves_initial_object" xlink:title="category_theory.functor.preserves_zero_morphisms_of_preserves_initial_object">
<path fill="none" stroke="black" d="M6193.81,-828.42C6157.61,-806.32 6087.51,-763.47 6062.91,-748.39"/>
<polygon fill="black" stroke="black" points="6064.47,-745.24 6054.11,-743.02 6060.83,-751.22 6064.47,-745.24"/>
</a>
</g>
</g>
<!-- category_theory.limits.comp_preserves_colimit&#45;&gt;category_theory.limits.preserves_colimit -->
<g id="edge1052" class="edge">
<title>category_theory.limits.comp_preserves_colimit&#45;&gt;category_theory.limits.preserves_colimit</title>
<g id="a_edge1052"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.limits.comp_preserves_colimit" xlink:title="category_theory.limits.comp_preserves_colimit">
<path fill="none" stroke="black" d="M6216.31,-742.99C6228.41,-743.79 6232.11,-789.36 6227.71,-818.38"/>
<polygon fill="black" stroke="black" points="6224.28,-817.71 6225.71,-828.21 6231.14,-819.11 6224.28,-817.71"/>
</a>
</g>
</g>
<!-- category_theory.functor.preserves_zero_morphisms_of_preserves_initial_object&#45;&gt;category_theory.functor.preserves_zero_morphisms -->
<g id="edge1053" class="edge">
<title>category_theory.functor.preserves_zero_morphisms_of_preserves_initial_object&#45;&gt;category_theory.functor.preserves_zero_morphisms</title>
<g id="a_edge1053"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/category_theory.functor.preserves_zero_morphisms_of_preserves_initial_object" xlink:title="category_theory.functor.preserves_zero_morphisms_of_preserves_initial_object">
<path fill="none" stroke="black" d="M6054.01,-740.91C6055.41,-738.85 6086.11,-692.88 6105.11,-664.34"/>
<polygon fill="black" stroke="black" points="6108.19,-666.03 6110.81,-655.77 6102.36,-662.16 6108.19,-666.03"/>
</a>
</g>
</g>
<!-- comm_group -->
<g id="node454" class="node">
<title>comm_group</title>
<g id="a_node454"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_group" xlink:title="comm_group">
<polygon fill="none" stroke="black" points="9248.01,-2878 9150.01,-2878 9150.01,-2847 9248.01,-2847 9248.01,-2878"/>
<text text-anchor="middle" x="9199.01" y="-2858.8" font-family="Courier,monospace" font-size="14.00">comm_group</text>
</a>
</g>
</g>
<!-- comm_group&#45;&gt;comm_monoid -->
<g id="edge859" class="edge">
<title>comm_group&#45;&gt;comm_monoid</title>
<g id="a_edge859"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_group.to_comm_monoid" xlink:title="comm_group.to_comm_monoid">
<path fill="none" stroke="black" d="M9156.21,-2848.4C9112.51,-2833.7 9043.31,-2808 8988.01,-2776.5 8969.51,-2766 8969.31,-2756.3 8950.01,-2747.5 8948.01,-2746.6 8710.01,-2698.3 8593.61,-2674.7"/>
<polygon fill="black" stroke="black" points="8594.31,-2671.27 8583.81,-2672.7 8592.91,-2678.13 8594.31,-2671.27"/>
</a>
</g>
</g>
<!-- comm_group&#45;&gt;division_comm_monoid -->
<g id="edge860" class="edge">
<title>comm_group&#45;&gt;division_comm_monoid</title>
<g id="a_edge860"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_group.to_division_comm_monoid" xlink:title="comm_group.to_division_comm_monoid">
<path fill="none" stroke="black" d="M9193.71,-2848.2C9187.61,-2832.2 9177.31,-2805.5 9169.91,-2786.2"/>
<polygon fill="black" stroke="black" points="9173.08,-2784.67 9166.21,-2776.6 9166.54,-2787.19 9173.08,-2784.67"/>
</a>
</g>
</g>
<!-- comm_group&#45;&gt;lattice_ordered_comm_group.has_one_lattice_has_pos_part -->
<g id="edge863" class="edge">
<title>comm_group&#45;&gt;lattice_ordered_comm_group.has_one_lattice_has_pos_part</title>
<g id="a_edge863"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_one_lattice_has_pos_part" xlink:title="lattice_ordered_comm_group.has_one_lattice_has_pos_part">
<path fill="none" stroke="black" d="M9247.81,-2855C9262.91,-2852.8 9279.61,-2850.5 9295.01,-2848.5 9555.21,-2814.2 9630.41,-2854.3 9881.01,-2776.5 9882.21,-2776.1 10518.01,-2445 10519.01,-2444.5 10608.01,-2406 10648.01,-2431.9 10725.01,-2372.5 10727.01,-2371.3 10728.01,-2369.7 10729.01,-2368"/>
<polygon fill="black" stroke="black" points="10732.17,-2369.53 10734.01,-2359.1 10726.06,-2366.1 10732.17,-2369.53"/>
</a>
</g>
</g>
<!-- comm_group&#45;&gt;lattice_ordered_comm_group.has_one_lattice_has_neg_part -->
<g id="edge864" class="edge">
<title>comm_group&#45;&gt;lattice_ordered_comm_group.has_one_lattice_has_neg_part</title>
<g id="a_edge864"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/lattice_ordered_comm_group.has_one_lattice_has_neg_part" xlink:title="lattice_ordered_comm_group.has_one_lattice_has_neg_part">
<path fill="none" stroke="black" d="M9247.81,-2855C9262.91,-2852.9 9279.71,-2850.6 9295.01,-2848.5 9540.21,-2815.3 9618.31,-2870.9 9847.01,-2776.5 9875.11,-2764.9 10254.01,-2457.4 10281.01,-2444.5 10410.01,-2383.9 10476.01,-2453.4 10593.01,-2372.5 10595.01,-2371.4 10596.01,-2369.8 10597.01,-2368.2"/>
<polygon fill="black" stroke="black" points="10600.27,-2369.55 10602.01,-2359.1 10594.13,-2366.18 10600.27,-2369.55"/>
</a>
</g>
</g>
<!-- group -->
<g id="node455" class="node">
<title>group</title>
<g id="a_node455"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/group" xlink:title="group">
<polygon fill="none" stroke="black" points="9053.01,-2778 8997.01,-2778 8997.01,-2747 9053.01,-2747 9053.01,-2778"/>
<text text-anchor="middle" x="9025.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">group</text>
</a>
</g>
</g>
<!-- comm_group&#45;&gt;group -->
<g id="edge861" class="edge">
<title>comm_group&#45;&gt;group</title>
<g id="a_edge861"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_group.to_group" xlink:title="comm_group.to_group">
<path fill="none" stroke="black" d="M9175.21,-2848.4C9144.81,-2831.2 9092.11,-2801.2 9057.91,-2781.7"/>
<polygon fill="black" stroke="black" points="9059.25,-2778.44 9048.81,-2776.6 9055.83,-2784.54 9059.25,-2778.44"/>
</a>
</g>
</g>
<!-- cancel_comm_monoid -->
<g id="node456" class="node">
<title>cancel_comm_monoid</title>
<g id="a_node456"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cancel_comm_monoid" xlink:title="cancel_comm_monoid">
<polygon fill="none" stroke="black" points="7965.51,-2778 7800.51,-2778 7800.51,-2747 7965.51,-2747 7965.51,-2778"/>
<text text-anchor="middle" x="7883.01" y="-2758.8" font-family="Courier,monospace" font-size="14.00">cancel_comm_monoid</text>
</a>
</g>
</g>
<!-- comm_group&#45;&gt;cancel_comm_monoid -->
<g id="edge862" class="edge">
<title>comm_group&#45;&gt;cancel_comm_monoid</title>
<g id="a_edge862"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/comm_group.to_cancel_comm_monoid" xlink:title="comm_group.to_cancel_comm_monoid">
<path fill="none" stroke="black" d="M9150.21,-2854.4C9135.11,-2852.3 9118.41,-2850.1 9103.01,-2848.5 8606.11,-2797.8 8475.71,-2829 7974.81,-2776.5"/>
<polygon fill="black" stroke="black" points="7975.11,-2773.01 7964.81,-2775.5 7974.42,-2779.98 7975.11,-2773.01"/>
</a>
</g>
</g>
<!-- group&#45;&gt;division_monoid -->
<g id="edge866" class="edge">
<title>group&#45;&gt;division_monoid</title>
<g id="a_edge866"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/group.to_division_monoid" xlink:title="group.to_division_monoid">
<path fill="none" stroke="black" d="M9053.21,-2750.3C9056.11,-2749.3 9059.11,-2748.4 9062.01,-2747.5 9161.51,-2718 9278.41,-2692.5 9354.01,-2677.3"/>
<polygon fill="black" stroke="black" points="9354.89,-2680.69 9364.01,-2675.3 9353.52,-2673.83 9354.89,-2680.69"/>
</a>
</g>
</g>
<!-- group&#45;&gt;div_inv_monoid -->
<g id="edge867" class="edge">
<title>group&#45;&gt;div_inv_monoid</title>
<g id="a_edge867"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/group.to_div_inv_monoid" xlink:title="group.to_div_inv_monoid">
<path fill="none" stroke="black" d="M9053.21,-2750.5C9056.21,-2749.4 9059.11,-2748.4 9062.01,-2747.5 9171.91,-2711.7 9222.71,-2748.9 9312.01,-2675.5 9340.91,-2651.8 9357.21,-2610.3 9365.01,-2584.3"/>
<polygon fill="black" stroke="black" points="9368.43,-2585.08 9367.81,-2574.5 9361.7,-2583.15 9368.43,-2585.08"/>
</a>
</g>
</g>
<!-- group&#45;&gt;has_bracket -->
<g id="edge865" class="edge">
<title>group&#45;&gt;has_bracket</title>
<g id="a_edge865"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/commutator_element" xlink:title="commutator_element">
<path fill="none" stroke="black" d="M8996.91,-2755.6C8982.91,-2753 8965.61,-2749.9 8950.01,-2747.5 8732.61,-2713.8 8473.41,-2682.7 8356.11,-2669.2"/>
<polygon fill="black" stroke="black" points="8356.25,-2665.69 8345.91,-2668 8355.44,-2672.64 8356.25,-2665.69"/>
</a>
</g>
</g>
<!-- group&#45;&gt;char_zero.fintype.card.invertible -->
<g id="edge869" class="edge">
<title>group&#45;&gt;char_zero.fintype.card.invertible</title>
<g id="a_edge869"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/char_zero.fintype.card.invertible" xlink:title="char_zero.fintype.card.invertible">
<path fill="none" stroke="black" d="M9053.31,-2750.6C9056.21,-2749.5 9059.21,-2748.5 9062.01,-2747.5 9157.51,-2714.2 9213.01,-2753.1 9278.01,-2675.5 9315.51,-2630.7 9259.01,-2589.8 9297.01,-2545.5 9369.51,-2461 9523.31,-2458.6 9564.61,-2459.6"/>
<polygon fill="black" stroke="black" points="9564.79,-2463.11 9574.91,-2460 9565.06,-2456.11 9564.79,-2463.11"/>
</a>
</g>
</g>
<!-- cancel_monoid -->
<g id="node457" class="node">
<title>cancel_monoid</title>
<g id="a_node457"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cancel_monoid" xlink:title="cancel_monoid">
<polygon fill="none" stroke="black" points="7763.51,-2677 7640.51,-2677 7640.51,-2646 7763.51,-2646 7763.51,-2677"/>
<text text-anchor="middle" x="7702.01" y="-2657.8" font-family="Courier,monospace" font-size="14.00">cancel_monoid</text>
</a>
</g>
</g>
<!-- group&#45;&gt;cancel_monoid -->
<g id="edge868" class="edge">
<title>group&#45;&gt;cancel_monoid</title>
<g id="a_edge868"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/group.to_cancel_monoid" xlink:title="group.to_cancel_monoid">
<path fill="none" stroke="black" d="M8997.01,-2755.2C8982.91,-2752.4 8965.61,-2749.4 8950.01,-2747.5 8432.51,-2685.3 8294.11,-2740.6 7773.01,-2675.5"/>
<polygon fill="black" stroke="black" points="7773.38,-2672.02 7763.01,-2674.2 7772.48,-2678.96 7773.38,-2672.02"/>
</a>
</g>
</g>
<!-- cancel_comm_monoid&#45;&gt;comm_monoid -->
<g id="edge870" class="edge">
<title>cancel_comm_monoid&#45;&gt;comm_monoid</title>
<g id="a_edge870"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cancel_comm_monoid.to_comm_monoid" xlink:title="cancel_comm_monoid.to_comm_monoid">
<path fill="none" stroke="black" d="M7964.71,-2748.5C8095.81,-2728.5 8350.31,-2689.6 8468.21,-2671.6"/>
<polygon fill="black" stroke="black" points="8468.75,-2675.06 8478.11,-2670.1 8467.7,-2668.14 8468.75,-2675.06"/>
</a>
</g>
</g>
<!-- cancel_comm_monoid&#45;&gt;cancel_monoid -->
<g id="edge871" class="edge">
<title>cancel_comm_monoid&#45;&gt;cancel_monoid</title>
<g id="a_edge871"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/cancel_comm_monoid.to_cancel_monoid" xlink:title="cancel_comm_monoid.to_cancel_monoid">
<path fill="none" stroke="black" d="M7858.21,-2747.4C7826.51,-2730.1 7771.41,-2699.9 7735.81,-2680.5"/>
<polygon fill="black" stroke="black" points="7737.27,-2677.31 7726.81,-2675.6 7733.92,-2683.46 7737.27,-2677.31"/>
</a>
</g>
</g>
<!-- left_cancel_monoid -->
<g id="node458" class="node">
<title>left_cancel_monoid</title>
<g id="a_node458"><a xlink:href="https://leanprover-community.github.io/mathlib_docs/find/left_cancel_monoid" xlink:title="left_cancel_monoid">
<polygon fill="none" stroke="black" points="7687.51,-2576 7522.51,-2576 7522.51,-2545 7687.51,-2545 7687.51
Display the source blob
Display the rendered blob
Raw
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@eric-wieser
Copy link
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment