# Proofs

proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "finite_sets[T].card_subset")
   (lemma "finite_sets[T].same_card_subset")
   (inst -1 "vert(Mgraph(G!1,W!1,t!1))" "vert(G!1)")
   (inst -2 "vert(Mgraph(G!1,W!1,t!1))" "vert(G!1)")
   (expand "size")
   (hide -1)
   (prop)
   (("1"
     (case "vert(Mgraph(G!1, W!1, t!1)) = vert(G!1)")
     (("1"
       (expand "close?")
       (expand "attached?")
       (prop)
       (skosimp*)
       (inst -5 "w!2")
       (prop)
       (expand "intersection")
       (expand "member")
       (skosimp*)
       (hide -4 3)
       (expand "Mgraph")
       (expand "Kgraph")
       (expand "add")
       (expand "member")
       (expand "difference")
       (expand "member")
       (expand "Hverts")
       (expand "path_verts")
       (expand "subgraph")
       (decompose-equality -3)
       (inst -1 "p!1(length(p!1)-2)")
       (("1"
         (iff)
         (prop)
         (("1"
           (hide -4 -5 -6)
           (install-rewrites "paths")
           (assert)
           (prop)
           (("1"
             (inst -7 "length(p!1)-2" "length(p!1)-1")
             (("1" (assert))
              ("2"
               (assert)
               (reveal -3)
               (expand "good?")
               (expand "separable?")
               (propax))))
            ("2"
             (reveal -3)
             (expand "separates")
             (prop)
             (replace -1 -9 rl)
             (propax))
            ("3"
             (inst -5 "length(p!1)-2")
             (("1" (assert))
              ("2"
               (case "length(p!1)=1")
               (("1"
                 (replace -1 * lr)
                 (assert)
                 (reveal -3)
                 (expand "good?")
                 (expand "separable?")
                 (propax))
                ("2" (assert))))))
            ("4"
             (inst -4 "length(p!1)-2")
             (("1" (assert))
              ("2"
               (assert)
               (case "length(p!1)=1")
               (("1"
                 (replace -1 * lr)
                 (assert)
                 (reveal -3)
                 (expand "good?")
                 (expand "separable?")
                 (propax))
                ("2" (assert))))))))
          ("2"
           (expand "finseq_appl")
           (inst 1 "rev(p!1^(length(p!1)-2,length(p!1)-1))")
           (("1"
             (expand "path_from?")
             (prop)
             (expand "from?")
             (prop)
             (expand "path?")
             (expand "finseq_appl")
             (prop)
             (hide -1 -2)
             (expand* "^" "min")
             (expand "rev")
             (expand "walk?")
             (expand "finseq_appl")
             (prop)
             (assert)
             (expand "walk_from?")
             (expand "del_verts")
             (expand "walk?")
             (prop)
             (("1"
               (expand "verts_in?")
               (expand "difference")
               (expand "member")
               (skosimp*)
               (prop)
               (("1"
                 (typepred "i!1")
                 (case "i!1=0")
                 (("1"
                   (replace -1 * lr)
                   (assert)
                   (inst -4 "length(p!1)-1"))
                  ("2"
                   (case "i!1=1")
                   (("1" (replace -1 * lr) (assert)) ("2" (assert))))))
                ("2"
                 (typepred "i!1")
                 (case "i!1=0")
                 (("1"
                   (replace -1 * lr)
                   (assert)
                   (inst -6 "length(p!1)-2")
                   (("1" (assert) (expand "separates") (propax))
                    ("2"
                     (case "length(p!1)=1")
                     (("1"
                       (replace -1 * lr)
                       (assert)
                       (replace -8 -9 lr)
                       (expand "good?")
                       (expand "separable?")
                       (propax))
                      ("2" (assert))))))
                  ("2"
                   (case "i!1=1")
                   (("1"
                     (replace -1 * lr)
                     (assert)
                     (decompose-equality -10)
                     (inst -1 "seq(p!1)(length(p!1) - 2)")
                     (("1"
                       (iff)
                       (expand "singleton")
                       (prop)
                       (("1"
                         (inst -8 "length(p!1)-2")
                         (("1"
                           (assert)
                           (hide-all-but (-2 -5 -6 -8 -11 3))
                           (grind)
                           (case "dbl[T](t!1, w!2)=dbl[T]( w!2,t!1)")
                           (("1" (replace -1 -5 rl) (propax))
                            ("2"
                             (hide -4 2)
                             (install-rewrites "finite_sets[T]")
                             (expand "dbl")
                             (grind)
                             (apply-extensionality 1 :hide? t)
                             (iff)
                             (prop))))
                          ("2"
                           (case "length(p!1)=1")
                           (("1"
                             (replace -1 * lr)
                             (assert)
                             (expand "good?")
                             (expand "separable?")
                             (propax))
                            ("2" (assert))))))
                        ("2"
                         (expand "internal_verts")
                         (inst 2 "length(p!1)-2")
                         (("1"
                           (assert)
                           (hide -2 3)
                           (expand "finseq_appl")
                           (case "length(p!1)=2")
                           (("1"
                             (replace -1 * lr)
                             (assert)
                             (replace -8 -3 lr)
                             (expand "separates")
                             (propax))
                            ("2"
                             (case "length(p!1)=1")
                             (("1"
                               (replace -1 * lr)
                               (assert)
                               (expand "good?")
                               (expand "separable?")
                               (propax))
                              ("2" (assert))))))
                          ("2"
                           (hide -2 3)
                           (case "length(p!1)=1")
                           (("1"
                             (replace -1 * lr)
                             (assert)
                             (expand "good?")
                             (expand "separable?")
                             (propax))
                            ("2" (assert))))))))
                      ("2"
                       (case "length(p!1)=1")
                       (("1"
                         (replace -1 * lr)
                         (assert)
                         (expand "good?")
                         (expand "separable?")
                         (propax))
                        ("2" (assert))))))
                    ("2" (assert))))))))
              ("2"
               (skosimp*)
               (expand "finseq_appl")
               (case "n!1=0")
               (("1"
                 (replace -1 * lr)
                 (assert)
                 (expand "edge?" 1)
                 (prop)
                 (("1"
                   (inst -6 "length(p!1)-2")
                   (("1" (assert) (expand "edge?") (propax))
                    ("2"
                     (case "length(p!1)=1")
                     (("1"
                       (replace -1 * lr)
                       (assert)
                       (expand "good?")
                       (expand "separable?")
                       (propax))
                      ("2" (assert))))))
                  ("2"
                   (hide -2)
                   (inst -4 "length(p!1)-2")
                   (("1"
                     (assert)
                     (expand "edge?")
                     (prop)
                     (("1"
                       (hide-all-but (-6 1))
                       (install-rewrites "graphs")
                       (assert)
                       (case "dbl[T](seq(p!1)(length(p!1) - 2), seq(p!1)(length(p!1) - 1))=dbl[T](seq(p!1)(length(p!1) - 1), seq(p!1)(length(p!1) - 2))")
                       (("1" (replace -1 * lr) (propax))
                        ("2"
                         (hide -1 2)
                         (grind)
                         (expand "dbl")
                         (apply-extensionality 1 :hide? t)
                         (("1" (iff) (prop))
                          ("2"
                           (skosimp*)
                           (reveal -8 -9 -11)
                           (case "length(p!1)=1")
                           (("1" (replace -1 * lr) (assert))
                            ("2" (assert))))
                          ("3"
                           (reveal -8 -9 -11)
                           (case "length(p!1)=1")
                           (("1" (replace -1 * lr) (assert))
                            ("2" (skosimp*) (assert))))))
                        ("3"
                         (case "dbl[T](seq(p!1)(length(p!1) - 2), seq(p!1)(length(p!1) - 1))=dbl[T](seq(p!1)(length(p!1) - 1), seq(p!1)(length(p!1) - 2))")
                         (("1" (replace -1 * lr) (propax))
                          ("2"
                           (hide -1 3)
                           (expand "dbl")
                           (apply-extensionality 1 :hide? t)
                           (("1" (iff) (prop))
                            ("2"
                             (skosimp*)
                             (reveal -8 -9 -11)
                             (case "length(p!1)=1")
                             (("1" (replace -1 * lr) (assert))
                              ("2" (assert))))
                            ("3"
                             (skosimp*)
                             (reveal -8 -9 -11)
                             (case "length(p!1)=1")
                             (("1" (replace -1 * lr) (assert))
                              ("2" (assert))))))
                          ("3"
                           (grind)
                           (reveal -6 -7 -9)
                           (case "length(p!1)=1")
                           (("1" (replace -1 * lr) (assert))
                            ("2" (assert))))))))
                      ("2"
                       (expand "separates")
                       (prop)
                       (replace -1 -11 rl)
                       (propax))
                      ("3"
                       (expand "separates")
                       (prop)
                       (replace -1 -12 rl)
                       (propax))
                      ("4"
                       (hide-all-but (-4 3))
                       (case "dbl[T](seq(p!1)(length(p!1) - 2), seq(p!1)(length(p!1) - 1))=dbl[T](seq(p!1)(length(p!1) - 1), seq(p!1)(length(p!1) - 2))")
                       (("1" (replace -1 * lr) (propax))
                        ("2"
                         (hide -1 2)
                         (expand "dbl")
                         (apply-extensionality 1 :hide? t)
                         (("1" (iff) (prop))
                          ("2"
                           (skosimp*)
                           (reveal -6 -7 -9)
                           (case "length(p!1)=1")
                           (("1"
                             (replace -1 * lr)
                             (assert)
                             (expand "good?")
                             (expand "separable?")
                             (propax))
                            ("2" (assert))))
                          ("3"
                           (skosimp*)
                           (reveal -6 -7 -9)
                           (case "length(p!1)=1")
                           (("1"
                             (replace -1 * lr)
                             (assert)
                             (expand "good?")
                             (expand "separable?")
                             (propax))
                            ("2" (assert))))))
                        ("3"
                         (reveal -4 -5 -7)
                         (case "length(p!1)=1")
                         (("1"
                           (replace -1 * lr)
                           (assert)
                           (expand "good?")
                           (expand "separable?")
                           (propax))
                          ("2" (assert))))))))
                    ("2"
                     (case "length(p!1)=1")
                     (("1"
                       (replace -1 * lr)
                       (assert)
                       (expand "good?")
                       (expand "separable?")
                       (propax))
                      ("2" (assert))))))
                  ("3"
                   (skosimp*)
                   (expand "dbl")
                   (hide -3 -4)
                   (prop)
                   (("1"
                     (expand "separates")
                     (prop)
                     (replace -1 -2 lr)
                     (replace -8 -2 lr)
                     (propax))
                    ("2"
                     (inst -5 "length(p!1)-2")
                     (("1"
                       (assert)
                       (decompose-equality -9)
                       (inst -1 "seq(p!1)(length(p!1)-2)")
                       (("1"
                         (iff)
                         (prop)
                         (("1"
                           (expand "singleton")
                           (replace -3 -8 lr)
                           (replace -11 -8 lr)
                           (hide-all-but (-8 2))
                           (grind)
                           (case "dbl[T](w!2,t!1)=dbl[T](t!1,w!2)")
                           (("1" (replace -1 -2 lr) (propax))
                            ("2"
                             (hide -1 3)
                             (expand "dbl")
                             (apply-extensionality 1 :hide? t)
                             (iff)
                             (prop))))
                          ("2" (replace -1 -2 lr) (propax))
                          ("3"
                           (hide-all-but (-7 -8 2))
                           (expand "internal_verts")
                           (inst 1 "length(p!1)-2")
                           (("1"
                             (assert)
                             (case "length(p!1)=2")
                             (("1"
                               (reveal -6 -7)
                               (replace -3 * lr)
                               (assert)
                               (expand "good?")
                               (expand "separable?")
                               (propax))
                              ("2"
                               (case "length(p!1)=1")
                               (("1"
                                 (reveal -6 -7)
                                 (replace -3 * lr)
                                 (assert)
                                 (expand "separates")
                                 (prop)
                                 (("1"
                                   (expand "good?")
                                   (expand "separable?")
                                   (propax))
                                  ("2"
                                   (assert)
                                   (expand "finseq_appl")
                                   (propax))))
                                ("2"
                                 (case "length(p!1)=1")
                                 (("1" (propax))
                                  ("2"
                                   (assert)
                                   (reveal -6)
                                   (expand "good?")
                                   (expand "separable?")
                                   (assert)
                                   (expand "finseq_appl")
                                   (propax))))))))
                            ("2"
                             (case "length(p!1)=1")
                             (("1"
                               (replace -1 * lr)
                               (assert)
                               (reveal -6)
                               (expand "good?")
                               (expand "separable?")
                               (propax))
                              ("2" (assert))))))))
                        ("2"
                         (case "length(p!1)=1")
                         (("1"
                           (replace -1 * lr)
                           (assert)
                           (expand "good?")
                           (expand "separable?")
                           (propax))
                          ("2" (assert))))))
                      ("2"
                       (case "length(p!1)=1")
                       (("1"
                         (replace -1 * lr)
                         (assert)
                         (expand "good?")
                         (expand "separable?")
                         (propax))
                        ("2" (assert))))))))))
                ("2" (assert))))))
            ("2" (expand* "^" "min") (expand "rev") (assert))
            ("3"
             (case "length(p!1)=1")
             (("1"
               (expand "path_from?")
               (prop)
               (expand "from?")
               (prop)
               (replace -1 * lr)
               (assert)
               (expand "good?")
               (expand "separable?")
               (propax))
              ("2" (assert))))))
          ("3"
           (expand "path_from?")
           (prop)
           (expand "path?")
           (prop)
           (expand "walk?")
           (expand "finseq_appl")
           (prop)
           (expand "verts_in?")
           (inst -1 "length(p!1)-2")
           (case "length(p!1)=1")
           (("1"
             (expand "from?")
             (prop)
             (replace -1 * lr)
             (assert)
             (expand "good?")
             (expand "separable?")
             (propax))
            ("2" (assert))))
          ("4"
           (expand "path_from?")
           (prop)
           (expand "path?")
           (simplify)
           (prop)
           (expand "walk?")
           (prop)
           (expand "verts_in?")
           (expand "finseq_appl")
           (inst -1 "length(p!1)-2")
           (case "length(p!1)=1")
           (("1"
             (expand "from?")
             (prop)
             (replace -1 * lr)
             (assert)
             (expand "good?")
             (expand "separable?")
             (propax))
            ("2" (assert))))
          ("5"
           (expand "path_from?")
           (expand "path?")
           (prop)
           (expand "walk?")
           (prop)
           (expand "verts_in?")
           (expand "finseq_appl")
           (inst -2 "length(p!1)-2")
           (case "length(p!1)=1")
           (("1"
             (replace -1 * lr)
             (expand "from?")
             (prop)
             (replace -1 * lr)
             (assert)
             (expand "good?")
             (expand "separable?")
             (propax))
            ("2" (assert))))))
        ("2"
         (expand "path_from?")
         (prop)
         (expand "from?")
         (prop)
         (case "length(p!1)=1")
         (("1"
           (replace -1 * lr)
           (assert)
           (expand "good?")
           (expand "separable?")
           (propax))
          ("2" (assert))))))
      ("2"
       (reveal -3)
       (inst -1 "vert(Mgraph(G!1, W!1, t!1))" "vert(G!1)")
       (prop)
       (("1"
         (hide -1 -4 2 4)
         (lemma "subset_Wt")
         (inst -1 "G!1" "W!1" "s!1" "t!1")
         (prop))
        ("2" (assert))))))
    ("2"
     (hide -3 3)
     (lemma "subset_Wt")
     (inst -1 "G!1" "W!1" "s!1" "t!1")
     (prop))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "C_induct")
   (lemma "graph_induction_vert")
   (inst -1 "lambda (g:graph[T]):C(g,s!1,t!1)")
   (bddsimp)
   (inst? -2))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (install-rewrites "walks")
   (assert)
   (prop)
   (("1" (skosimp*) (inst -3 "i!1") (inst -1 "seq(p1!1)(i!1)") (prop))
    ("2"
     (skosimp*)
     (prop)
     (("1" (inst -6 "n!1") (prop))
      ("2"
       (inst -5 "n!1")
       (prop)
       (inst -4 "dbl[T](seq(p1!1)(n!1), seq(p1!1)(1 + n!1))")
       (prop))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "path_from?")
   (prop)
   (expand "path?")
   (prop)
   (lemma "subgraph_walks")
   (inst?)
   (inst?)
   (prop))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: try
script:
  (""
   (skosimp*)
   (lemma "NAT_induction")
   (inst -1
    "lambda n : (forall (r:prewalk),i: length(r)=n and i<length(r) and V!1(seq(r)(i)) implies exists m: greatest?(r,V!1,m))")
   (prop)
   (("1" (inst -1 "length(p!1)") (inst -1 "p!1" "i!1") (assert))
    ("2"
     (skosimp*)
     (hide -5 -6 2)
     (inst-cp 1 "i!2")
     (hide 1)
     (expand "greatest?")
     (prop)
     (skosimp*)
     (reveal 1)
     (inst -3 "j!1-j!2")
     (("1"
       (prop)
       (("1"
         (inst -1 "r!1^(j!2,j!1-1)" "_")
         (("1"
           (inst -1 "0")
           (prop)
           (("1"
             (skosimp*)
             (inst 1 "m!1+j!2")
             (expand "greatest?")
             (prop)
             (("1"
               (expand* "^" min empty_seq)
               (lift-if -1)
               (install-rewrites "walks")
               (assert))
              ("2"
               (expand* "^" min empty_seq)
               (install-rewrites "walks")
               (assert))
              ("3"
               (expand* "^" min empty_seq)
               (install-rewrites "walks")
               (assert)
               (skosimp*)
               (inst -5 "j!3-j!2")
               (("1" (assert)) ("2" (grind))))))
            ("2"
             (install-rewrites "walks")
             (assert)
             (expand* "^" min empty_seq)
             (propax))
            ("3"
             (expand* "^" min empty_seq)
             (lift-if 1)
             (install-rewrites "walks")
             (assert))
            ("4" (expand* "^" min empty_seq) (assert))))
          ("2"
           (install-rewrites "walks")
           (assert)
           (expand* "^" min empty_seq)
           (assert))
          ("3" (assert))))
        ("2" (assert))))
      ("2" (assert))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (lemma "NAT_induction")
   (inst -1
    "lambda n : (forall (r:prewalk),i: length(r)=n and i<length(r) and V!1(seq(r)(i)) implies exists m: least?(r,V!1,m))")
   (prop)
   (("1" (inst -1 "length(p!1)") (inst -1 "p!1" "i!1") (assert))
    ("2"
     (skosimp*)
     (hide -5 -6 2)
     (inst-cp 1 "i!2")
     (hide 1)
     (expand "least?")
     (prop)
     (skosimp*)
     (reveal 1)
     (inst -3 "j!2+1")
     (prop)
     (("1"
       (inst -1 "r!1^(0,j!2)" "_")
       (("1"
         (inst -1 "j!2")
         (prop)
         (("1"
           (skosimp*)
           (inst 1 "m!1")
           (expand "least?")
           (prop)
           (("1" (expand* "^" "min") (assert)) ("2" (expand* "^" "min"))
            ("3"
             (install-rewrites "walks")
             (assert)
             (skosimp*)
             (inst -5 "j!3")
             (assert))))
          ("2" (expand* "^" "min") (assert))
          ("3" (expand* "^" "min") (assert)) ("4" (expand* "^" "min"))))
        ("2" (expand* "^" "min") (assert))))
      ("2" (assert))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: changed Mgraph def
script:
  (""
   (skosimp*)
   (lemma "sep_set_small")
   (inst -1 "G!1" "V!1" "k!1" "s!1" "t!1")
   (prop)
   (skosimp*)
   (expand "separates")
   (prop)
   (inst 3 "p!1")
   (expand "walk_from?")
   (prop)
   (("1" (expand "path_from?") (prop) (expand "from?") (prop))
    ("2" (expand "path_from?") (prop) (expand "from?") (prop))
    ("3"
     (expand "walk?")
     (expand "finseq_appl")
     (case "exists (i:below(length(p!1))) : W!1(seq(p!1)(i))")
     (("1"
       (hide 1)
       (skosimp*)
       (lemma "greatest_is")
       (inst?)
       (typepred "i!1")
       (assert)
       (hide -1)
       (skosimp*)
       (inst 3 "rev(add1(rev(p!1^(k!2,length(p!1)-1)),s!1))")
       (("1"
         (expand "greatest?")
         (assert)
         (prop)
         (hide -6)
         (install-rewrites "paths")
         (expand "Mgraph")
         (expand* "^" "min" "empty_seq")
         (expand "add1")
         (assert)
         (prop)
         (("1"
           (skosimp*)
           (prop)
           (("1"
             (hide -7 -8)
             (inst -6 "i!2-1+k!2")
             (("1" (prop)) ("2" (assert))))
            ("2"
             (hide -7 -8)
             (inst -6 "i!2-1+k!2")
             (("1" (prop)) ("2" (assert))))
            ("3"
             (hide -7 -8)
             (reveal 3)
             (hide (-1 -2 -3 -4 -5 -6 -7))
             (reveal (-1 -2 -3 -4 -5 -6 -7 -8 9))
             (hide -8)
             (hide -1 -2 -3 -4 -5 -6)
             (reveal (-8 -9))
             (reveal (-1 -2 -3 -4 -5 -6))
             (skosimp*)
             (inst 1 "w!1 o p!1^(i!2+k!2,length(p!1)-1)")
             (("1"
               (expand "walk_from?")
               (prop)
               (("1"
                 (expand* "^" "min" "empty_seq")
                 (expand "o")
                 (propax))
                ("2"
                 (expand* "^" "min" "empty_seq")
                 (expand "o")
                 (install-rewrites "walks")
                 (assert)
                 (lift-if 1)
                 (grind))
                ("3"
                 (expand "walk?")
                 (prop)
                 (("1"
                   (expand "verts_in?")
                   (expand* "^" "min" "empty_seq")
                   (expand "o ")
                   (install-rewrites "walks")
                   (assert)
                   (skosimp*)
                   (prop)
                   (("1" (inst -4 "i!3") (prop))
                    ("2" (inst -5 "i!3") (prop))
                    ("3"
                     (typepred "i!3")
                     (expand* "^" "min" "empty_seq")
                     (expand "o")
                     (assert))
                    ("4"
                     (typepred "i!3")
                     (expand* "^" "min" "empty_seq")
                     (expand "o")
                     (assert))
                    ("5"
                     (typepred "i!3")
                     (expand* "^" "min" "empty_seq")
                     (expand "o")
                     (assert))
                    ("6"
                     (typepred "i!3")
                     (expand* "^" "min" "empty_seq")
                     (expand "o")
                     (assert))
                    ("7"
                     (typepred "i!3")
                     (expand* "^" "min" "empty_seq")
                     (expand "o")
                     (assert)
                     (assert)
                     (inst -11 "i!2 - length(w!1) + i!3 + k!2")
                     (prop))
                    ("8"
                     (assert)
                     (typepred "i!3")
                     (expand "o ")
                     (expand* "^" "min" "empty_seq")
                     (assert)
                     (inst -10 "i!2 - length(w!1) + i!3 + k!2")
                     (prop)
                     (("1" (assert)) ("2" (assert))))))
                  ("2"
                   (expand "finseq_appl")
                   (skosimp*)
                   (expand* "^" "min" "empty_seq")
                   (expand "o")
                   (expand "del_verts")
                   (lift-if 1)
                   (prop)
                   (("1"
                     (assert)
                     (prop)
                     (("1"
                       (lift-if -3)
                       (prop)
                       (("1" (assert) (inst -8 "n!1") (assert))
                        ("2" (assert) (inst -8 "n!1") (assert))
                        ("3"
                         (case "n!1=length(w!1)-1")
                         (("1"
                           (replace -1 * lr)
                           (assert)
                           (inst -15 "i!2 - 1+k!2")
                           (assert))
                          ("2" (grind))))))
                      ("2"
                       (lift-if 1)
                       (lift-if -2)
                       (assert)
                       (prop)
                       (("1" (inst -8 "n!1") (prop))
                        ("2" (inst -8 "n!1") (prop))
                        ("3" (inst -6 "n!1") (assert)) ("4" (assert))
                        ("5" (assert)) ("6" (assert)) ("7" (assert))
                        ("8"
                         (assert)
                         (case "n!1=length(w!1)-1")
                         (("1"
                           (replace -1 * lr)
                           (assert)
                           (inst -13 "i!2-1+k!2")
                           (assert))
                          ("2" (assert))))))
                      ("3"
                       (skosimp*)
                       (prop)
                       (("1"
                         (inst -7 "n!1")
                         (prop)
                         (replace -1 -2 lr)
                         (propax))
                        ("2"
                         (hide -8 -15 -16)
                         (install-rewrites "walks")
                         (assert)
                         (lift-if -1)
                         (prop)
                         (("1"
                           (lift-if -5)
                           (assert)
                           (replace -2 -3 lr)
                           (inst -8 "1+n!1")
                           (assert))
                          ("2" (lift-if -5) (assert)) ("3" (assert))
                          ("4"
                           (assert)
                           (case "n!1=length(w!1)-1")
                           (("1"
                             (replace -1 * lr)
                             (assert)
                             (inst -12 "i!2+k!2")
                             (assert))
                            ("2" (assert))))))))))
                    ("2" (lift-if -2) (assert)) ("3" (assert))
                    ("4"
                     (assert)
                     (prop)
                     (("1"
                       (inst -13 "i!2 - length(w!1) + k!2 + n!1")
                       (prop)
                       (("1" (assert)) ("2" (assert))))
                      ("2"
                       (assert)
                       (inst -12 "i!2 - length(w!1) + k!2 + n!1")
                       (assert))
                      ("3"
                       (assert)
                       (skosimp*)
                       (prop)
                       (("1"
                         (inst -11 "i!2 - length(w!1) + k!2 + n!1")
                         (assert))
                        ("2"
                         (replace -1 -2 lr)
                         (inst -11 "1 - length(w!1) + i!2 + k!2 + n!1")
                         (assert))))))))))))
              ("2"
               (expand* "^" "min" "empty_seq")
               (expand "o")
               (lift-if 1)
               (prop)
               (("1" (typepred "w!1") (assert)) ("2" (assert))
                ("3" (assert))))))
            ("4"
             (inst -7 "i!2-1+k!2")
             (("1" (prop)) ("2" (inst -5 "i!1") (assert))))))
          ("2"
           (skosimp*)
           (prop)
           (("1"
             (lift-if -1)
             (prop)
             (("1" (inst -9 "n!1-1+k!2") (("1" (assert)) ("2" (assert))))
              ("2" (typepred "n!1") (assert))))
            ("2"
             (lift-if 1)
             (assert)
             (typepred "k!2")
             (typepred "n!1")
             (case "n!1=0")
             (("1"
               (replace -1 * lr)
               (assert)
               (hide -2)
               (inst 2 "seq(p!1)(k!2)")
               (lemma "dbl_comm")
               (inst -1 "s!1" "seq(p!1)(k!2)")
               (prop)
               (inst -9 "k!2")
               (prop))
              ("2" (assert) (inst -9 "k!2-1+n!1") (assert))))
            ("3"
             (skosimp*)
             (prop)
             (("1"
               (lift-if -1)
               (prop)
               (("1"
                 (inst -8 "n!1-1+k!2")
                 (("1" (prop) (replace -2 -8 rl) (propax))
                  ("2" (assert))))
                ("2" (replace -1 -12 rl) (propax))))
              ("2"
               (case "n!1=0")
               (("1"
                 (replace -1 * lr)
                 (assert)
                 (skosimp*)
                 (replace -6 * lr)
                 (hide -6)
                 (inst 1 "seq(p!1)(k!2)")
                 (prop)
                 (("1"
                   (lemma "dbl_comm")
                   (inst -1 "s!1" "seq(p!1)(k!2)")
                   (inst -12 "k!2")
                   (prop))
                  ("2"
                   (expand "dbl")
                   (apply-extensionality 1 :hide? t)
                   (bddsimp))))
                ("2"
                 (lift-if -2)
                 (case "n!1>0")
                 (("1"
                   (prop)
                   (("1"
                     (assert)
                     (reveal 3)
                     (hide -10 -12 3)
                     (skosimp*)
                     (replace -2 * lr)
                     (hide -2)
                     (inst 1 "w!1 o p!1^(k!2 + n!1,length(p!1)-1)")
                     (("1"
                       (install-rewrites "walks")
                       (assert)
                       (prop)
                       (("1"
                         (skosimp*)
                         (prop)
                         (("1" (inst -6 "i!2") (prop))
                          ("2" (inst -7 "i!2") (prop))
                          ("3"
                           (reveal -2)
                           (inst -1 "i!2-length(w!1)+k!2+n!1")
                           (("1" (prop)) ("2" (assert))))
                          ("4"
                           (inst -11 "i!2 - length(w!1) + k!2 + n!1")
                           (("1" (assert)) ("2" (assert))))))
                        ("2"
                         (skosimp*)
                         (prop)
                         (("1"
                           (assert)
                           (lift-if -1)
                           (prop)
                           (("1"
                             (lift-if -2)
                             (prop)
                             (("1" (inst -10 "n!2") (assert))
                              ("2"
                               (case-replace "n!2=length(w!1)-1")
                               (("1"
                                 (assert)
                                 (hide -3 -4 -12 1)
                                 (replace -6 -2 lr)
                                 (inst -13 "k!2-1+n!1")
                                 (assert))
                                ("2" (assert))))))
                            ("2"
                             (lift-if -1)
                             (prop)
                             (("1" (assert))
                              ("2"
                               (inst -14 "k!2 - length(w!1) + n!1 + n!2")
                               (("1"
                                 (prop)
                                 (("1" (assert)) ("2" (assert))))
                                ("2" (assert))))))))
                          ("2"
                           (hide -2 -9)
                           (lift-if 1)
                           (prop)
                           (("1"
                             (lift-if 1)
                             (prop)
                             (("1" (inst -8 "n!2") (assert))
                              ("2"
                               (case "n!2=length(w!1)-1")
                               (("1"
                                 (replace -1 * lr)
                                 (assert)
                                 (hide -2 1 3)
                                 (inst -12 "k!2+n!1-1")
                                 (assert))
                                ("2" (assert))))))
                            ("2"
                             (assert)
                             (inst -11 "k!2-length(w!1)+n!1+n!2")
                             (prop)
                             (("1" (assert)) ("2" (assert))))))
                          ("3"
                           (skosimp*)
                           (lift-if -2)
                           (prop)
                           (("1"
                             (inst -9 "n!2")
                             (prop)
                             (replace -1 -3 lr)
                             (propax))
                            ("2"
                             (lift-if -1)
                             (prop)
                             (("1"
                               (inst -10 "1+n!2")
                               (prop)
                               (replace -2 -4 lr)
                               (propax))
                              ("2"
                               (case "n!2=length(w!1)-1")
                               (("1"
                                 (replace -1 * lr)
                                 (assert)
                                 (inst -15 "k!2+n!2")
                                 (prop)
                                 (("1"
                                   (assert)
                                   (hide -4 1)
                                   (case "length(w!1)=1")
                                   (("1"
                                     (replace -1 * lr)
                                     (assert)
                                     (hide -2 -7)
                                     (hide -10 -12)
                                     (hide -2 1)
                                     (hide -9)
                                     (reveal -11)
                                     (inst -1 "0" "k!2-1+n!1")
                                     (prop)
                                     (("1"
                                       (replace -6 -7 lr)
                                       (hide-all-but (-7 -9 -12 -14 1 4))
                                       (grind))
                                      ("2" (assert))))
                                    ("2"
                                     (case "n!2=0")
                                     (("1" (replace -1 * lr) (assert))
                                      ("2" (assert))))))
                                  ("2"
                                   (assert)
                                   (hide -3 -13 2)
                                   (reveal -3)
                                   (inst -1 "k!2+n!1")
                                   (prop)
                                   (("1" (assert))
                                    ("2" (hide 2 3) (hide -5) (assert))
                                    ("3" (replace -2 -3 lr) (propax))))
                                  ("3"
                                   (reveal -1)
                                   (inst -1 "k!2+n!1")
                                   (prop)
                                   (("1" (assert))
                                    ("2" (assert))
                                    ("3" (replace -2 -4 lr) (propax))))))
                                ("2" (assert))))))
                            ("3"
                             (inst -13 "n!2 - length(w!1) + k!2 + n!1")
                             (("1"
                               (prop)
                               (("1" (assert)) ("2" (assert))
                                ("3" (replace -1 -2 lr) (propax))))
                              ("2" (assert))))
                            ("4"
                             (assert)
                             (inst -13
                              "1 - length(w!1) + k!2 + n!1 + n!2")
                             (assert))))))))
                      ("2"
                       (hide -5 -6 -10 -12)
                       (install-rewrites "walks")
                       (assert))))
                    ("2" (assert))))
                  ("2" (assert))))))
              ("3"
               (inst -7 "n!1+k!2")
               (prop)
               (replace -1 -7 rl)
               (propax))
              ("4"
               (reveal 3)
               (hide -8 -10 2)
               (skosimp*)
               (replace -5 * lr)
               (hide -5)
               (inst 1 "w!1 o p!1^(k!2 + n!1+1,length(p!1)-1)")
               (("1"
                 (install-rewrites "walks")
                 (assert)
                 (prop)
                 (("1"
                   (expand* "^" "min" "empty_seq")
                   (lift-if 1)
                   (prop)
                   (("1" (assert)) ("2" (assert)) ("3" (assert))))
                  ("2"
                   (skosimp*)
                   (prop)
                   (("1" (inst -4 "i!2") (prop))
                    ("2" (inst -5 "i!2") (prop))
                    ("3"
                     (expand* "^" "min" "empty_seq")
                     (assert)
                     (prop)
                     (("1"
                       (case "k!2+n!1=length(p!1)-1")
                       (("1"
                         (replace -1 -4 lr)
                         (replace -14 -4 lr)
                         (reveal 4)
                         (hide -1 -2 -10 -12 2 3)
                         (inst 1 "w!1")
                         (assert)
                         (prop))
                        ("2" (assert))))
                      ("2"
                       (case "k!2+n!1=length(p!1)-1")
                       (("1"
                         (replace -1 -4 lr)
                         (replace -14 -4 lr)
                         (reveal 4)
                         (hide -1 -2 -10 -12 2 3)
                         (inst 1 "w!1")
                         (assert)
                         (prop))
                        ("2" (assert))))
                      ("3"
                       (reveal -2)
                       (inst -1 "1 - length(w!1) + i!2 + k!2 + n!1")
                       (prop))))
                    ("4"
                     (expand* "^" "min" "empty_seq")
                     (case "k!2+n!1=length(p!1)-1")
                     (("1"
                       (replace -1 -4 lr)
                       (replace -14 -4 lr)
                       (hide -8 -9 -10 -11 -12)
                       (reveal 4)
                       (inst 1 "w!1")
                       (hide -2)
                       (assert)
                       (prop))
                      ("2"
                       (assert)
                       (inst -9 "1 - length(w!1) + i!2 + k!2 + n!1")
                       (assert)
                       (typepred "i!2")
                       (expand* "^" "min" "empty_seq")
                       (assert))))))
                  ("3"
                   (skosimp*)
                   (prop)
                   (("1"
                     (lift-if -1)
                     (expand* "^" "min" "empty_seq")
                     (assert)
                     (lift-if -2)
                     (prop)
                     (("1"
                       (lift-if -4)
                       (prop)
                       (("1" (inst -9 "n!2") (prop) (assert))
                        ("2" (assert)) ("3" (assert))))
                      ("2"
                       (lift-if -4)
                       (prop)
                       (("1" (inst -9 "n!2") (prop) (assert))
                        ("2" (assert)) ("3" (assert))))
                      ("3"
                       (assert)
                       (lift-if -3)
                       (prop)
                       (("1" (inst -8 "n!2") (assert))
                        ("2"
                         (assert)
                         (case "n!2=length(w!1)-1")
                         (("1"
                           (replace -1 * lr)
                           (assert)
                           (hide -4 1)
                           (replace -5 -2 lr)
                           (inst -13 "k!2 + n!1")
                           (assert))
                          ("2" (assert))))))
                      ("4" (assert)) ("5" (assert))
                      ("6"
                       (lift-if -2)
                       (prop)
                       (inst -12 "1 - length(w!1) + k!2 + n!1 + n!2")
                       (("1" (assert)) ("2" (assert))))))
                    ("2"
                     (expand* "^" "min" "empty_seq")
                     (lift-if -1)
                     (prop)
                     (("1"
                       (hide -12)
                       (lift-if 1)
                       (prop)
                       (("1"
                         (lift-if 1)
                         (prop)
                         (("1" (inst -8 "n!2") (assert)) ("2" (assert))
                          ("3" (assert))))
                        ("2" (assert)) ("3" (assert))))
                      ("2"
                       (hide -12)
                       (lift-if 1)
                       (prop)
                       (("1"
                         (lift-if 1)
                         (prop)
                         (("1" (inst -8 "n!2") (assert)) ("2" (assert))
                          ("3" (assert))))
                        ("2" (assert)) ("3" (assert))))
                      ("3"
                       (assert)
                       (lift-if 3)
                       (prop)
                       (("1"
                         (lift-if 1)
                         (prop)
                         (("1" (inst -7 "n!2") (assert))
                          ("2"
                           (assert)
                           (case "n!2=length(w!1)-1")
                           (("1"
                             (replace -1 * lr)
                             (assert)
                             (hide -2 1)
                             (reveal 4)
                             (assert)
                             (prop)
                             (("1"
                               (skosimp*)
                               (prop)
                               (("1" (reveal -3) (inst -1 "i!2") (prop))
                                ("2"
                                 (inst -6 "i!2")
                                 (("1"
                                   (prop)
                                   (inst -13 "k!2+n!1")
                                   (prop)
                                   (("1" (replace -7 -1 rl) (assert))
                                    ("2" (assert))))
                                  ("2"
                                   (assert)
                                   (inst -12 "k!2+n!1")
                                   (assert))))))
                              ("2" (inst -12 "k!2+n!1") (assert))))
                            ("2" (assert))))))
                        ("2"
                         (lift-if 2)
                         (prop)
                         (("1" (assert))
                          ("2"
                           (inst -11 "1 - length(w!1) + k!2 + n!1 + n!2")
                           (("1" (prop) (("1" (assert)) ("2" (assert))))
                            ("2" (assert))))))))))
                    ("3"
                     (skosimp*)
                     (lift-if -2)
                     (assert)
                     (prop)
                     (("1" (replace -1 * lr) (inst -7 "n!2") (prop))
                      ("2"
                       (lift-if -1)
                       (prop)
                       (("1" (replace -2 * lr) (inst -8 "1+n!2") (prop))
                        ("2"
                         (expand* "^" "min" "empty_seq")
                         (lift-if -1)
                         (prop)
                         (("1" (assert)) ("2" (assert))
                          ("3"
                           (replace -1 * lr)
                           (inst -12 "2 - length(w!1) + k!2 + n!1 + n!2")
                           (("1" (assert)) ("2" (assert))))))))
                      ("3"
                       (expand* "^" "min" "empty_seq")
                       (lift-if -1)
                       (prop)
                       (("1" (assert)) ("2" (assert))
                        ("3"
                         (replace -1 * lr)
                         (inst -11 "1 - length(w!1) + k!2 + n!1 + n!2")
                         (("1" (assert)) ("2" (assert))))))
                      ("4"
                       (expand* "^" "min" "empty_seq")
                       (lift-if -1)
                       (prop)
                       (("1" (assert))
                        ("2"
                         (replace -1 * lr)
                         (inst -12 "2 - length(w!1) + k!2 + n!1 + n!2")
                         (("1" (assert)) ("2" (assert))))
                        ("3"
                         (replace -1 * lr)
                         (inst -11 "2 - length(w!1) + k!2 + n!1 + n!2")
                         (("1" (assert)) ("2" (assert))))))))))))
                ("2" (install-rewrites "walks") (assert))))))
            ("4"
             (skosimp*)
             (lift-if -2)
             (prop)
             (("1"
               (assert)
               (replace -1 -3 lr)
               (inst -9 "k!2-1+n!1")
               (prop))
              ("2"
               (replace -1 -3 lr)
               (inst -9 "k!2+n!1")
               (("1" (assert)) ("2" (assert))))
              ("3" (replace -1 * lr) (propax))
              ("4" (replace -1 * lr) (inst -8 "n!1+k!2") (prop))))))
          ("3"
           (skosimp*)
           (lift-if -1)
           (lift-if -1)
           (lift-if -1)
           (prop)
           (("1"
             (inst -10 "i!2 - 1 + k!2" "j!1 - 1 + k!2")
             (("1" (assert)) ("2" (assert)) ("3" (assert))))
            ("2"
             (inst -9 "i!2 - 1 + k!2" "0")
             (("1" (assert)) ("2" (assert))))
            ("3" (assert) (inst -9 "0" "j!1 - 1 + k!2") (assert))
            ("4" (assert))))))
        ("2" (install-rewrites "walks") (assert))
        ("3"
         (install-rewrites "walks")
         (expand* "^" "min" "empty_seq")
         (expand "rev")
         (lift-if 1)
         (prop)
         (("1" (expand "greatest?") (prop) (assert)) ("2" (assert))
          ("3" (assert))))))
      ("2"
       (hide (-1 -2 -4 -5 5))
       (prop)
       (("1"
         (expand "verts_in?")
         (skosimp*)
         (expand "del_verts")
         (expand "difference")
         (expand "member")
         (prop)
         (("1"
           (reveal -1)
           (expand "path_from?")
           (expand "path?")
           (prop)
           (expand "walk?")
           (expand "finseq_appl")
           (prop)
           (hide -2 -3 -4 -5 2)
           (grind))
          ("2" (typepred "i!1") (inst 1 "i!1"))))
        ("2"
         (skosimp*)
         (install-rewrites "graphs")
         (assert)
         (prop)
         (("1"
           (reveal -1)
           (expand "path_from?")
           (prop)
           (expand "path?")
           (expand "finseq_appl")
           (prop)
           (inst -2 "n!1" "n!1+1")
           (assert))
          ("2"
           (reveal -1)
           (expand "path_from?")
           (expand "path?")
           (prop)
           (expand "walk?")
           (expand "finseq_appl")
           (prop)
           (inst -2 "n!1")
           (expand "edge?")
           (prop)
           (expand "del_verts")
           (hide -1)
           (prop))
          ("3"
           (skosimp*)
           (prop)
           (("1" (inst 2 "n!1") (assert))
            ("2" (inst 2 "n!1+1") (assert))))))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: change Mgraph def
script:
  (""
   (skosimp*)
   (lemma "sep_set_small")
   (inst -1 "G!1" "V!1" "k!1" "s!1" "t!1")
   (prop)
   (skosimp*)
   (expand "separates")
   (prop)
   (inst 3 "p!1")
   (expand "walk_from?")
   (prop)
   (("1" (expand "path_from?") (prop) (expand "from?") (prop))
    ("2" (expand "path_from?") (prop) (expand "from?") (prop))
    ("3"
     (expand "walk?")
     (case "exists (i:below(length(p!1))) : W!1(seq(p!1)(i))")
     (("1"
       (hide 1)
       (skosimp*)
       (lemma "least_is")
       (inst?)
       (typepred "i!1")
       (assert)
       (hide -1)
       (skosimp*)
       (inst 3 "add1(p!1^(0,k!2),t!1)")
       (("1"
         (expand "least?")
         (assert)
         (prop)
         (hide -6)
         (install-rewrites "paths")
         (expand "Mgraph")
         (expand* "^" min empty_seq)
         (expand "add1")
         (assert)
         (prop)
         (("1"
           (skosimp*)
           (prop)
           (("1" (hide -7 -8) (inst -6 "i!2") (prop))
            ("2" (assert) (hide -7 -8) (inst -6 "i!2") (prop))
            ("3"
             (assert)
             (hide -7 -8)
             (reveal 3)
             (hide (-1 -2 -3 -4 -5 -6 -7))
             (reveal (-1 -2 -3 -4 -5 -6 -7 -8 9))
             (hide -8)
             (hide -1 -2 -3 -4 -5 -6)
             (reveal (-8 -9))
             (reveal (-1 -2 -3 -4 -5 -6))
             (skosimp*)
             (inst 1 "p!1^(0,i!2-1) o rev(w!1)")
             (("1"
               (expand "walk_from?")
               (prop)
               (("1"
                 (expand "^")
                 (expand "o")
                 (expand "empty_seq")
                 (install-rewrites "walks")
                 (assert)
                 (lift-if 1)
                 (assert))
                ("2"
                 (expand "^")
                 (expand "o")
                 (expand "empty_seq")
                 (install-rewrites "walks")
                 (assert)
                 (lift-if 1)
                 (assert))
                ("3"
                 (expand "walk?")
                 (prop)
                 (("1"
                   (expand "verts_in?")
                   (expand "^")
                   (expand "o ")
                   (install-rewrites "walks")
                   (assert)
                   (skosimp*)
                   (lift-if 1)
                   (prop)
                   (("1" (typepred "i!3") (assert)) ("2" (assert))
                    ("3"
                     (typepred "i!3")
                     (expand "^")
                     (expand "o")
                     (expand "empty_seq")
                     (assert)
                     (inst -5 "length(w!1)-1-i!3")
                     (prop))
                    ("4"
                     (typepred "i!3")
                     (expand "^")
                     (expand "o")
                     (expand "empty_seq")
                     (assert)
                     (inst -6 "length(w!1) - 1 - i!3")
                     (prop))
                    ("5" (inst -11 "i!3") (prop))
                    ("6" (inst -10 "i!3") (assert))
                    ("7"
                     (inst -3 "length(w!1) - 1 - i!3 + i!2")
                     (("1" (prop))
                      ("2"
                       (typepred "i!3")
                       (assert)
                       (expand "^")
                       (assert))))
                    ("8"
                     (inst -4 "length(w!1) - 1 - i!3 + i!2")
                     (("1" (prop))
                      ("2"
                       (assert)
                       (typepred "i!3")
                       (expand "^")
                       (expand "rev")
                       (assert))))))
                  ("2"
                   (skosimp*)
                   (expand "^")
                   (expand "o")
                   (expand "del_verts")
                   (lift-if 1)
                   (prop)
                   (("1"
                     (expand "empty_seq")
                     (assert)
                     (prop)
                     (("1"
                       (assert)
                       (expand "rev")
                       (inst -7 "length(w!1) - 2 - n!1")
                       (("1" (assert)) ("2" (assert))))
                      ("2"
                       (assert)
                       (expand "rev")
                       (assert)
                       (inst -6 "length(w!1) - 2 - n!1")
                       (assert)
                       (prop)
                       (assert)
                       (lemma "dbl_comm")
                       (inst -1 "seq(w!1)(length(w!1)-2-n!1)"
                        "seq(w!1)(length(w!1)-1-n!1)")
                       (replace -1 -7 lr)
                       (propax))
                      ("3"
                       (skosimp*)
                       (prop)
                       (("1"
                         (expand "rev")
                         (inst -7 "length(w!1) - 1 - n!1")
                         (("1" (prop) (replace -1 -2 lr) (propax))
                          ("2" (assert))))
                        ("2"
                         (hide -8 -15 -16)
                         (install-rewrites "walks")
                         (assert)
                         (inst -7 "length(w!1) - 2 - n!1")
                         (prop)
                         (replace -1 -2 lr)
                         (propax))))))
                    ("2"
                     (expand "empty_seq")
                     (lift-if -1)
                     (assert)
                     (expand "rev")
                     (assert)
                     (prop)
                     (("1"
                       (lift-if -1)
                       (lift-if -1)
                       (assert)
                       (prop)
                       (("1" (inst -15 "n!1") (assert))
                        ("2"
                         (assert)
                         (case "n!1=i!2-1")
                         (("1"
                           (replace -1 * lr)
                           (assert)
                           (inst -15 "i!2-1")
                           (assert))
                          ("2" (assert))))
                        ("3"
                         (inst -6 "length(w!1) - 2 - n!1 + i!2")
                         (assert))))
                      ("2"
                       (lift-if 1)
                       (prop)
                       (("1"
                         (lift-if 1)
                         (prop)
                         (("1" (inst -14 "n!1") (assert))
                          ("2"
                           (case "n!1=i!2-1")
                           (("1"
                             (replace -1 * lr)
                             (assert)
                             (replace -5 * lr)
                             (inst -14 "i!2-1")
                             (assert))
                            ("2" (assert))))))
                        ("2"
                         (lift-if 2)
                         (prop)
                         (("1" (assert))
                          ("2"
                           (inst -5 "length(w!1) - 2 - n!1 + i!2")
                           (assert)
                           (prop)
                           (lemma "dbl_comm")
                           (inst -1
                            "seq(w!1)(length(w!1) - 1 - n!1 + i!2)"
                            "seq(w!1)(length(w!1) - 2 - n!1 + i!2)")
                           (replace -1 * lr)
                           (propax))))))
                      ("3"
                       (skosimp*)
                       (lift-if -2)
                       (prop)
                       (("1" (replace -1 * lr) (inst -12 "n!1") (assert))
                        ("2"
                         (lift-if -1)
                         (prop)
                         (("1"
                           (replace -2 * lr)
                           (inst -13 "1+n!1")
                           (assert))
                          ("2"
                           (replace -1 * lr)
                           (inst -7 "length(w!1) - 2 - n!1 + i!2")
                           (prop))))
                        ("3"
                         (replace -1 * lr)
                         (inst -6 "length(w!1) - 1 - n!1 + i!2")
                         (prop))
                        ("4"
                         (lift-if -1)
                         (prop)
                         (("1"
                           (replace -2 * lr)
                           (inst -12 "1+n!1")
                           (assert))
                          ("2"
                           (replace -1 * lr)
                           (inst -6 "length(w!1) - 2 - n!1 + i!2")
                           (prop))))))))))))))
              ("2"
               (expand "^")
               (expand "o")
               (expand "empty_seq")
               (expand "rev")
               (assert)
               (lift-if 1)
               (assert))
              ("3"
               (assert)
               (typepred "i!1")
               (typepred "i!2")
               (case "i!2=0")
               (("1"
                 (replace -1 * lr)
                 (assert)
                 (reveal 3)
                 (inst 1 "rev(w!1)")
                 (("1"
                   (expand "walk_from?")
                   (prop)
                   (("1" (expand "rev") (replace -16 -5 lr) (propax))
                    ("2" (expand "rev") (propax))
                    ("3"
                     (expand "rev")
                     (expand "walk?")
                     (prop)
                     (("1"
                       (expand "verts_in?")
                       (skosimp*)
                       (expand "del_verts")
                       (expand "difference")
                       (expand "member")
                       (inst -6 "length(w!1) - 1 - i!3"))
                      ("2"
                       (skosimp*)
                       (expand "del_verts")
                       (expand "edge?")
                       (prop)
                       (("1"
                         (inst -9 "length(w!1) - 2 - n!1")
                         (("1" (assert)) ("2" (assert))))
                        ("2"
                         (inst -8 "length(w!1) - 2 - n!1")
                         (("1"
                           (prop)
                           (("1"
                             (lemma "dbl_comm")
                             (inst -1 "seq(w!1)(length(w!1) - 2 - n!1)"
                              "seq(w!1)(length(w!1) - 1 - n!1)")
                             (("1"
                               (expand "finseq_appl")
                               (replace -1 * lr)
                               (propax))
                              ("2" (assert)) ("3" (assert))))
                            ("2" (assert))))
                          ("2" (assert))))
                        ("3"
                         (skosimp*)
                         (expand "dbl")
                         (prop)
                         (("1"
                           (expand "finseq_appl")
                           (replace -1 * lr)
                           (inst -9 "length(w!1) - 1 - n!1")
                           (("1" (prop)) ("2" (assert))))
                          ("2"
                           (expand "finseq_appl")
                           (replace -1 * lr)
                           (inst -9 "length(w!1) - 2 - n!1")
                           (("1" (prop)) ("2" (assert))))))))))))
                  ("2" (expand "rev") (assert))))
                ("2" (assert))))))
            ("4" (inst -7 "i!2") (prop))))
          ("2"
           (skosimp*)
           (prop)
           (("1"
             (lift-if -1)
             (prop)
             (lift-if -2)
             (prop)
             (("1" (inst -10 "n!1") (assert)) ("2" (assert))))
            ("2"
             (lift-if 1)
             (assert)
             (typepred "k!2")
             (typepred "n!1")
             (case "n!1=0")
             (("1"
               (replace -1 * lr)
               (assert)
               (hide -2)
               (inst -9 "0")
               (assert))
              ("2"
               (assert)
               (case-old-lift-if 3)
               (("1" (assert) (inst -10 "n!1") (prop) (assert))
                ("2"
                 (case "n!1=k!2")
                 (("1"
                   (inst + "seq(p!1)(k!2)")
                   (replace -1 * lr)
                   (prop)
                   (("1" (inst -9 "k!2") (assert)) ("2" (assert))))
                  ("2" (assert))))))))
            ("3"
             (skosimp*)
             (prop)
             (("1"
               (lift-if -1)
               (prop)
               (inst -8 "n!1")
               (prop)
               (replace -2 -8 rl)
               (propax))
              ("2"
               (assert)
               (case "n!1=0")
               (("1"
                 (replace -1 * lr)
                 (assert)
                 (skosimp*)
                 (replace -6 * lr)
                 (hide -6)
                 (reveal 3)
                 (inst 1 "rev(w!1)")
                 (("1"
                   (install-rewrites "walks")
                   (assert)
                   (prop)
                   (("1" (replace -14 * lr) (propax))
                    ("2" (skosimp*) (inst -4 "length(w!1)-1-i!2"))
                    ("3"
                     (skosimp*)
                     (prop)
                     (("1"
                       (inst -7 "length(w!1) - 2 - n!2")
                       (("1" (assert)) ("2" (assert))))
                      ("2"
                       (inst -6 "length(w!1) - 2 - n!2")
                       (("1"
                         (assert)
                         (prop)
                         (lemma "dbl_comm")
                         (inst -1 "seq(w!1)(length(w!1) - 1 - n!2)"
                          "seq(w!1)(length(w!1) - 2 - n!2)")
                         (replace -1 * lr)
                         (propax))
                        ("2" (assert))))
                      ("3"
                       (skosimp*)
                       (prop)
                       (("1"
                         (replace -1 * lr)
                         (inst -7 "length(w!1) - 1 - n!2")
                         (("1" (prop)) ("2" (assert))))
                        ("2"
                         (replace -1 * lr)
                         (inst -7 "length(w!1) - 2 - n!2")
                         (("1" (prop)) ("2" (assert))))))))))
                  ("2" (expand "rev") (assert))))
                ("2"
                 (case "n!1>0")
                 (("1"
                   (assert)
                   (reveal 3)
                   (hide -9 -11 3)
                   (skosimp*)
                   (replace -3 * rl)
                   (hide -3)
                   (inst 1 "p!1^(0,n!1-1) o rev(w!1)")
                   (("1"
                     (install-rewrites "walks")
                     (assert)
                     (prop)
                     (("1"
                       (skosimp*)
                       (prop)
                       (("1" (reveal -2) (inst -1 "i!2") (prop))
                        ("2" (inst -11 "i!2") (assert))
                        ("3"
                         (inst -3 "length(w!1) - 1 - i!2 + n!1")
                         (assert))
                        ("4"
                         (typepred "i!2")
                         (inst -5 "length(w!1) - 1 - i!2 + n!1")
                         (prop))))
                      ("2"
                       (skosimp*)
                       (prop)
                       (("1"
                         (case-old-lift-if -1)
                         (("1"
                           (assert)
                           (case-old-lift-if -2)
                           (("1" (assert) (inst -15 "n!2") (assert))
                            ("2"
                             (assert)
                             (case "n!2=n!1-1")
                             (("1"
                               (replace -1 * lr)
                               (assert)
                               (inst -13 "n!1-1")
                               (inst -15 "n!1-1")
                               (assert))
                              ("2" (assert))))))
                          ("2"
                           (assert)
                           (inst -6 "length(w!1) - 2 - n!2 + n!1")
                           (assert))))
                        ("2"
                         (lift-if 1)
                         (assert)
                         (prop)
                         (("1"
                           (lift-if 1)
                           (prop)
                           (("1" (inst -14 "n!2") (assert))
                            ("2"
                             (case "n!2=n!1-1")
                             (("1"
                               (replace -1 * lr)
                               (assert)
                               (inst -14 "n!1-1")
                               (prop)
                               (("1" (assert))
                                ("2" (delete -2 -3 2) (assert))))
                              ("2" (assert))))))
                          ("2"
                           (inst -5 "length(w!1) - 2 - n!2 + n!1")
                           (prop)
                           (("1"
                             (assert)
                             (lemma "dbl_comm")
                             (inst -1
                              "seq(w!1)(length(w!1) - 1 - n!2 + n!1)"
                              "seq(w!1)(length(w!1) - 2 - n!2 + n!1)")
                             (replace -1 * lr)
                             (propax))
                            ("2" (assert))))))
                        ("3"
                         (skosimp*)
                         (lift-if -2)
                         (prop)
                         (("1"
                           (replace -1 * lr)
                           (inst -13 "n!2")
                           (assert))
                          ("2"
                           (lift-if)
                           (split -1)
                           (("1"
                             (flatten)
                             (replace -2)
                             (inst -14 "1+n!2")
                             (assert))
                            ("2"
                             (flatten)
                             (replace -1)
                             (inst -7 "length(w!1) - 2 - n!2 + n!1")
                             (("1" (flatten)) ("2" (assert))))))
                          ("3"
                           (replace -1 * lr)
                           (inst -6 "length(w!1) - 1 - n!2 + n!1")
                           (("1" (flatten)) ("2" (assert))))
                          ("4"
                           (assert)
                           (replace -1)
                           (inst -6 "length(w!1) - 2 - n!2 + n!1")
                           (assert))))))))
                    ("2"
                     (hide-all-but (-1 -6 -7 1))
                     (install-rewrites "walks")
                     (assert))))
                  ("2" (assert))))))
              ("3"
               (lift-if -1)
               (prop)
               (("1" (inst -8 "1+n!1") (replace -2 * lr) (prop))
                ("2"
                 (case "n!1=k!2")
                 (("1"
                   (inst 3 "seq(p!1)(k!2)")
                   (prop)
                   (("1" (replace -2 + lr) (propax))
                    ("2" (lift-if 1) (assert))))
                  ("2" (assert))))))
              ("4"
               (reveal 3)
               (expand "walk_from?")
               (lift-if -2)
               (case "n!1=k!2")
               (("1"
                 (replace -1 * lr)
                 (assert)
                 (replace -3 * lr)
                 (inst 2 "seq(p!1)(k!2)")
                 (prop)
                 (inst -9 "k!2")
                 (prop))
                ("2"
                 (assert)
                 (skosimp*)
                 (inst 2 "p!1^(0,n!1) o rev(w!1)")
                 (("1"
                   (install-rewrites "walks")
                   (assert)
                   (prop)
                   (("1"
                     (skosimp*)
                     (prop)
                     (("1" (inst -12 "i!2") (prop))
                      ("2"
                       (typepred "i!2")
                       (expand "rev")
                       (expand "o")
                       (expand "^")
                       (inst -4 "length(w!1) - i!2 + n!1")
                       (("1" (prop)) ("2" (assert))))
                      ("3" (inst -11 "i!2") (assert))
                      ("4"
                       (inst -4 "length(w!1) - i!2 + n!1")
                       (("1" (prop))
                        ("2"
                         (assert)
                         (typepred "i!2")
                         (expand "^")
                         (expand "o ")
                         (expand "rev")
                         (assert))))))
                    ("2"
                     (skosimp*)
                     (prop)
                     (("1"
                       (lift-if -1)
                       (prop)
                       (("1"
                         (lift-if -2)
                         (prop)
                         (("1" (inst -16 "n!2") (assert))
                          ("2"
                           (assert)
                           (case "n!2=n!1")
                           (("1"
                             (replace -1 * lr)
                             (assert)
                             (replace -6 * lr)
                             (replace -9 * lr)
                             (inst -16 "n!1")
                             (prop)
                             (assert))
                            ("2" (assert))))))
                        ("2"
                         (lift-if -1)
                         (prop)
                         (("1"
                           (case "n!2=n!1")
                           (("1" (replace -1 * lr) (assert))
                            ("2" (assert))))
                          ("2"
                           (inst -6 "length(w!1) - 1 - n!2 + n!1")
                           (("1" (prop) (("1" (assert)) ("2" (assert))))
                            ("2" (assert))))))))
                      ("2"
                       (lift-if 1)
                       (prop)
                       (("1"
                         (lift-if 1)
                         (assert)
                         (prop)
                         (("1" (inst -15 "n!2") (prop) (assert))
                          ("2"
                           (case "n!2=n!1")
                           (("1"
                             (replace -1 * lr)
                             (assert)
                             (replace -5 * lr)
                             (replace -8 * lr)
                             (inst -15 "n!1")
                             (prop)
                             (assert))
                            ("2" (assert))))))
                        ("2"
                         (lift-if 2)
                         (prop)
                         (("1"
                           (case "n!2=n!1")
                           (("1" (replace -1 * lr) (assert))
                            ("2" (assert))))
                          ("2"
                           (inst -5 "length(w!1) - 1 - n!2 + n!1")
                           (("1"
                             (assert)
                             (prop)
                             (lemma "dbl_comm")
                             (inst -1
                              "seq(w!1)(length(w!1) - 1 - n!2 + n!1)"
                              "seq(w!1)(length(w!1)  - n!2 + n!1)")
                             (replace -1 * lr)
                             (propax))
                            ("2" (assert))))))))
                      ("3"
                       (skosimp*)
                       (lift-if -2)
                       (prop)
                       (("1" (replace -1 * lr) (inst -13 "n!2") (assert))
                        ("2"
                         (lift-if -1)
                         (prop)
                         (("1"
                           (replace -2 * lr)
                           (inst -14 "n!2+1")
                           (assert))
                          ("2"
                           (replace -1 * lr)
                           (inst -7 "length(w!1) - 1 - n!2 + n!1")
                           (("1" (prop)) ("2" (assert))))))
                        ("3"
                         (replace -1 * lr)
                         (inst -6 "length(w!1)  - n!2 + n!1")
                         (("1" (assert)) ("2" (assert))))
                        ("4"
                         (lift-if -1)
                         (prop)
                         (("1"
                           (replace -2 * lr)
                           (inst -13 "1+n!2")
                           (assert))
                          ("2"
                           (replace -1 * lr)
                           (inst -6 "length(w!1) - 1 - n!2 + n!1")
                           (("1" (assert)) ("2" (assert))))))))))))
                  ("2"
                   (hide (-3 -4 -9 -11 -12 -13 3))
                   (install-rewrites "walks")
                   (assert))))))))
            ("4"
             (skosimp*)
             (lift-if -2)
             (prop)
             (("1" (assert) (replace -1 -3 lr) (inst -9 "n!1") (prop))
              ("2"
               (lift-if -1)
               (prop)
               (("1" (replace -2 * lr) (inst -10 "1+n!1") (prop))
                ("2" (replace -1 * lr) (propax))))))))
          ("3"
           (skosimp*)
           (lift-if -1)
           (lift-if -1)
           (prop)
           (("1" (inst -10 "i!2" "j!1") (assert))
            ("2" (inst -9 "i!2" "length(p!1)-1") (assert))
            ("3" (assert) (inst -8 "length(p!1)-1" "j!1") (assert))))))
        ("2"
         (expand* "^" min empty_seq)
         (typepred "k!2")
         (assert)
         (expand "least?")
         (hide (-1 -2 -4 -5 5))
         (reveal -1)
         (hide -2 -3 -4 -5 2)
         (grind))))
      ("2"
       (hide (-1 -2 -4 -5 5))
       (prop)
       (("1"
         (expand "verts_in?")
         (skosimp*)
         (expand "del_verts")
         (expand "difference")
         (expand "member")
         (prop)
         (("1"
           (reveal -1)
           (expand "path_from?")
           (expand "path?")
           (expand "finseq_appl")
           (prop)
           (expand "walk?")
           (expand "finseq_appl")
           (prop)
           (hide -2 -3 -4 -5 2)
           (grind))
          ("2" (typepred "i!1") (inst 1 "i!1"))))
        ("2"
         (skosimp*)
         (install-rewrites "graphs")
         (assert)
         (prop)
         (("1"
           (reveal -1)
           (expand "path_from?")
           (prop)
           (expand "path?")
           (prop)
           (inst -2 "n!1" "n!1+1")
           (assert))
          ("2"
           (reveal -1)
           (expand "path_from?")
           (expand "path?")
           (prop)
           (expand "walk?")
           (prop)
           (inst -2 "n!1")
           (expand "edge?")
           (prop)
           (expand "del_verts")
           (hide -1)
           (prop)
           (expand "finseq_appl")
           (propax))
          ("3"
           (skosimp*)
           (prop)
           (("1" (inst 2 "n!1") (assert))
            ("2" (inst 2 "n!1+1") (assert))))))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: Mgraph_change
script:
  (""
   (skosimp*)
   (copy -1)
   (expand "B" -2)
   (prop)
   (hide -3)
   (lemma "set_small_s")
   (expand "B" 1)
   (prop)
   (("1"
     (expand "good?")
     (prop)
     (("1"
       (expand "separable?")
       (prop)
       (hide -2 -3 -6)
       (expand "Mgraph")
       (expand "edge?")
       (prop)
       (expand "union")
       (expand "member")
       (prop)
       (("1" (expand "Kgraph") (expand "subgraph") (prop))
        ("2"
         (reveal -3)
         (expand "separates")
         (prop)
         (expand "attach_edges")
         (skosimp*)
         (lemma "dbl_eq")
         (inst -1 "w!1" "s!1" "t!1" "s!1")
         (expand "intersection")
         (expand "member")
         (prop)
         (("1" (hide -3) (replace -1 -3 rl) (propax))
          ("2" (replace -1 -3 rl) (propax))))))
      ("2" (hide -1 -2 -3) (expand "Mgraph") (expand "add") (propax))
      ("3"
       (hide -1 -2 -3)
       (expand "Mgraph")
       (expand "add")
       (prop)
       (expand "member")
       (expand "Kgraph")
       (expand "subgraph")
       (prop)
       (expand "difference")
       (expand "member")
       (prop)
       (expand "Hverts")
       (expand "path_verts")
       (skosimp*)
       (expand "separates")
       (prop)
       (inst 4 "w!1"))))
    ("2"
     (skosimp*)
     (inst? -2)
     (inst? -2)
     (inst -2 "V!1")
     (prop)
     (("1"
       (hide -5)
       (expand "separates")
       (prop)
       (skosimp*)
       (inst 3 "p!1")
       (expand "path_from?")
       (expand "path?")
       (prop)
       (hide -2)
       (expand "walk_from?")
       (prop)
       (("1" (expand "from?") (prop)) ("2" (expand "from?") (prop))))
      ("2" (expand "separates") (prop) (expand "green?") (prop))
      ("3" (assert))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: Mgraph_change
script:
  (""
   (skosimp*)
   (copy -1)
   (expand "B" -2)
   (prop)
   (hide -3)
   (lemma "set_small_t")
   (expand "B" 1)
   (prop)
   (("1"
     (expand "good?")
     (prop)
     (("1"
       (expand "separable?")
       (prop)
       (hide -2 -3 -6)
       (expand "Mgraph")
       (expand "edge?")
       (prop)
       (expand "union")
       (expand "member")
       (prop)
       (("1" (expand "Kgraph") (expand "subgraph") (prop))
        ("2"
         (reveal -3)
         (expand "separates")
         (prop)
         (expand "attach_edges")
         (skosimp*)
         (lemma "dbl_eq")
         (inst -1 "w!1" "s!1" "t!1" "t!1")
         (expand "intersection")
         (expand "member")
         (prop)
         (replace -1 -3 rl)
         (propax))))
      ("2"
       (hide -1 -2 -3)
       (expand "Mgraph")
       (expand "add")
       (expand "member")
       (expand "Kgraph")
       (expand "subgraph")
       (prop)
       (expand "difference")
       (expand "member")
       (prop)
       (expand "Hverts")
       (expand "path_verts")
       (skosimp*)
       (expand "separates")
       (prop)
       (lemma "walk?_reverse")
       (inst -1 "del_verts(G!1,W!1)" "t!1" "s!1" "w!1")
       (prop)
       (skosimp*)
       (inst 4 "w!2"))
      ("3" (hide -1 -2 -3) (expand "Mgraph") (expand "add") (propax))))
    ("2"
     (skosimp*)
     (inst? -2)
     (inst? -2)
     (inst -2 "V!1")
     (prop)
     (("1"
       (hide -5)
       (expand "separates")
       (prop)
       (skosimp*)
       (inst 3 "p!1")
       (expand "path_from?")
       (expand "path?")
       (prop)
       (hide -2)
       (expand "walk_from?")
       (prop)
       (("1" (expand "from?") (prop)) ("2" (expand "from?") (prop))))
      ("2" (expand "separates") (prop) (expand "green?") (prop))
      ("3" (assert))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "separates")
   (prop)
   (skosimp*)
   (expand "walk_from?")
   (prop)
   (expand "subgraph?")
   (prop)
   (inst 3 "w!1")
   (prop)
   (grind)
   (("1" (hide-all-but (-5 5)) (typepred "GG!1") (grind))
    ("2"
     (case "i!1=length(w!1)-1")
     (("1" (hide -2) (replace -1 * lr) (reveal -5) (inst?) (prop))
      ("2" (assert))))
    ("3"
     (case "i!1=length(w!1)-1")
     (("1" (replace -1 * lr) (reveal -4) (inst?) (prop)) ("2" (assert))))
    ("4"
     (case "i!1=length(w!1)-1")
     (("1" (replace -1 * lr) (reveal -4) (inst?) (prop))
      ("2" (assert))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "separates")
   (prop)
   (("1" (expand "add") (expand "member") (assert))
    ("2" (expand "add") (expand "member") (assert))
    ("3"
     (skosimp*)
     (case "del_verts(G!1, add(a!1, V!1))=del_verts(del_vert(G!1, a!1), V!1)")
     (("1" (inst 3 "w!1") (replace -1 -2 lr) (propax))
      ("2"
       (hide -1 4)
       (auto-rewrite-defs)
       (assert)
       (expand "difference")
       (expand "member")
       (prop)
       (("1"
         (expand "remove")
         (expand "add")
         (expand "member")
         (apply-extensionality :hide? t)
         (iff)
         (prop))
        ("2"
         (apply-extensionality 1 :hide? t)
         (iff 1)
         (prop)
         (("1" (inst -3 "a!1")) ("2" (skosimp*) (inst -4 "v!1") (assert))
          ("3" (skosimp*) (inst -4 "v!1") (assert))))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "separates")
   (prop)
   (("1" (expand "green?") (prop)) ("2" (expand "green?") (prop))
    ("3"
     (skosimp*)
     (inst 3 "w!1")
     (install-rewrites "walks")
     (assert)
     (prop)
     (("1"
       (skosimp*)
       (prop)
       (("1" (inst -3 "i!1") (prop))
        ("2"
         (inst -4 "i!1")
         (prop)
         (hide -5)
         (inst -7 "seq(w!1)(i!1)")
         (prop))))
      ("2"
       (skosimp*)
       (prop)
       (("1" (inst -6 "n!1") (prop)) ("2" (inst -5 "n!1") (prop))
        ("3"
         (skosimp*)
         (prop)
         (("1"
           (inst -7 "n!1")
           (prop)
           (inst -2 "seq(w!1)(n!1)")
           (inst -10 "seq(w!1)(n!1)")
           (prop)
           (replace -2 -3 lr)
           (propax))
          ("2"
           (replace -1 -2 lr)
           (inst -7 "n!1+1")
           (prop)
           (("1"
             (inst -2 "seq(w!1)(n!1+1)")
             (inst -10 "seq(w!1)(n!1+1)")
             (prop)
             (assert))
            ("2"
             (case "n!1=length(w!1)-2")
             (("1" (replace -1 + lr) (assert)) ("2" (assert))))))))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: induc
script:
  (""
   (induct "G" 1 "graph_induction_vert")
   (skosimp*)
   (case "k!1=size(G!1)-2")
   (("1"
     (inst 1 "subgraph(G!1,remove(s!1,remove(t!1,vert(G!1))))")
     (hide -2)
     (prop)
     (("1"
       (expand "green?")
       (prop)
       (("1"
         (expand "remove")
         (expand "member")
         (expand "subgraph")
         (propax))
        ("2"
         (expand "remove")
         (expand "member")
         (expand "subgraph")
         (propax))))
      ("2"
       (expand "subgraph?")
       (prop)
       (("1"
         (expand "remove")
         (expand "member")
         (expand "subgraph")
         (expand "green?")
         (prop)
         (expand "subset?")
         (expand "member")
         (skosimp*)
         (inst -4 "x!1")
         (prop)
         (("1" (replace -2 -3 rl) (propax))
          ("2" (replace -2 -3 rl) (propax))))
        ("2"
         (expand "remove")
         (expand "member")
         (expand "subgraph")
         (expand "subset?")
         (expand "member")
         (skosimp*)
         (prop)
         (("1" (inst -5 "x!1") (prop))
          ("2"
           (skosimp*)
           (prop)
           (("1"
             (replace -1 -2 rl)
             (typepred "H!1")
             (inst -1 "x!1")
             (prop)
             (inst -1 "s!1")
             (expand "green?")
             (prop))
            ("2"
             (replace -1 -2 rl)
             (typepred "H!1")
             (inst -1 "x!1")
             (expand "green?")
             (prop)
             (inst -1 "t!1")
             (prop))
            ("3"
             (inst -6 "x!1")
             (typepred "G!1")
             (inst -1 "x!1")
             (prop)
             (inst -2 "x!2")
             (prop))))))))
      ("3"
       (expand "remove")
       (expand "member")
       (expand "size")
       (expand "subgraph")
       (case "remove(s!1,remove(t!1,vert(G!1)))={i: T |
                           vert(G!1)(i) AND s!1 /= i AND t!1 /= i AND vert(G!1)(i)}")
       (("1"
         (replace -1 1 rl)
         (lemma "card_remove[T]")
         (inst -1 "vert(G!1)" "t!1")
         (lemma "card_remove[T]")
         (inst -1 "remove(t!1,vert(G!1))" "s!1")
         (replace -1 1 lr)
         (replace -2 1 lr)
         (lift-if 1)
         (lift-if 1)
         (hide -1 -2 -3 -6 -9)
         (expand "good?")
         (expand "separable?")
         (prop)
         (("1" (assert))
          ("2" (assert) (expand "remove") (expand "member") (propax))))
        ("2"
         (hide -1 -3 -4 -5 -6 2)
         (expand "remove")
         (expand "member")
         (apply-extensionality 1 :hide? t)
         (iff 1)
         (prop))))
      ("4"
       (hide -1 -3 -4 -5 -6)
       (install-rewrites "graph_ops")
       (assert)
       (prop)
       (("1" (skosimp*)) ("2" (skosimp*))))))
    ("2"
     (hide -1)
     (expand "subgraph?" -2)
     (prop)
     (hide -3)
     (case "subset?(vert(H!1), remove(s!1,remove(t!1,vert(G!1))))")
     (("1"
       (hide 2)
       (lemma "card_remove[T]")
       (inst -1 "vert(G!1)" "t!1")
       (lemma "card_remove[T]")
       (inst -1 "remove(t!1,vert(G!1))" "s!1")
       (replace -2 -1 lr)
       (hide -2)
       (case "vert(H!1)= remove(s!1, remove(t!1, vert(G!1)))")
       (("1"
         (lift-if -2)
         (lift-if -2)
         (prop)
         (("1"
           (expand "subset?")
           (expand "member")
           (expand "remove")
           (expand "member")
           (skosimp*)
           (expand "green?")
           (prop)
           (replace -4 -2 rl)
           (expand "size")
           (assert))
          ("2"
           (expand "good?")
           (expand "remove" 1)
           (expand "member")
           (expand "separable?")
           (prop)
           (assert))
          ("3"
           (case "remove(t!1, vert(G!1))(s!1)")
           (("1" (assert) (expand "good?") (propax))
            ("2" (assert) (expand "good?") (propax))))))
        ("2"
         (hide -1)
         (apply-extensionality 1 :hide? t)
         (iff 1)
         (prop)
         (("1"
           (expand "subset?")
           (expand "member")
           (inst -2 "x!1")
           (prop))
          ("2"
           (reveal -6 1)
           (inst -1 "del_vert(G!1,x!1)")
           (prop)
           (("1"
             (inst -1 "H!1" "k!1" "s!1" "t!1")
             (prop)
             (("1"
               (skosimp*)
               (inst 1 "HH!1")
               (prop)
               (hide -2 -5 -6 -8 -9 -10)
               (expand "subgraph?")
               (prop)
               (("1"
                 (expand "subset?")
                 (expand "member")
                 (skosimp*)
                 (inst -4 "x!2")
                 (prop)
                 (expand "del_vert")
                 (expand "remove")
                 (expand "member")
                 (prop))
                ("2"
                 (expand "subset?")
                 (expand "member")
                 (skosimp*)
                 (inst -5 "x!2")
                 (prop)
                 (expand "del_vert")
                 (prop))))
              ("2"
               (hide -2 -4 -5 -6 -7 2)
               (expand "good?")
               (expand "separable?")
               (expand "edge?")
               (expand "del_vert")
               (prop)
               (("1" (expand "remove") (expand "member") (prop) (assert))
                ("2"
                 (expand "remove")
                 (expand "member")
                 (prop)
                 (assert))))
              ("3"
               (hide 2)
               (reveal -6)
               (expand "subgraph?")
               (prop)
               (("1"
                 (hide -1 -3)
                 (expand "subset?")
                 (expand "member")
                 (skosimp*)
                 (inst -4 "x!2")
                 (expand "del_vert")
                 (expand "remove")
                 (expand "member")
                 (prop)
                 (replace -2 -3 rl)
                 (propax))
                ("2"
                 (hide -3)
                 (expand "subset?")
                 (expand "member")
                 (skosimp*)
                 (inst -2 "x!2")
                 (prop)
                 (expand "del_vert")
                 (prop)
                 (typepred "H!1")
                 (inst -1 "x!2")
                 (prop)
                 (inst -1 "x!1")
                 (prop))))
              ("4"
               (hide 2)
               (lemma "size_del_vert")
               (inst -1 "G!1" "x!1")
               (("1" (replace -1 1 lr) (assert))
                ("2" (expand "remove") (expand "member") (prop))))))
            ("2"
             (hide 2)
             (lemma "size_del_vert")
             (inst -1 "G!1" "x!1")
             (("1" (replace -1 1 lr) (assert))
              ("2" (expand "remove") (expand "member") (prop))))))))))
      ("2"
       (hide 3)
       (expand "subset?")
       (expand "member")
       (expand "remove")
       (expand "member")
       (skosimp*)
       (prop)
       (("1" (expand "green?") (prop) (replace -1 -2 rl) (propax))
        ("2" (expand "green?") (replace -1 -2 rl) (prop))
        ("3" (inst -3 "x!1") (prop))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (lemma "intermediate_subgraph")
   (inst -1 "G!1" "subgraph(G!1,V!1)" "k!1" "s!1" "t!1")
   (prop)
   (("1"
     (skosimp*)
     (inst 1 "vert(HH!1)")
     (prop)
     (("1"
       (expand "subgraph?")
       (prop)
       (expand "subgraph")
       (hide -3 -4 -5 -6 -10 -11)
       (expand "subset?")
       (skosimp*)
       (expand "member")
       (inst -6 "x!1")
       (inst -3 "x!1")
       (prop))
      ("2" (expand "size") (propax))
      ("3"
       (hide -2 -3 -6 -7 -8 -9)
       (install-rewrites "finite_sets[T]")
       (assert)
       (prop))))
    ("2"
     (hide -4 -5 2)
     (install-rewrites "graph_ops")
     (assert)
     (prop)
     (("1" (skosimp*)) ("2" (skosimp*))))
    ("3" (expand "subgraph") (expand "green?") (prop))
    ("4"
     (expand "size")
     (expand "subgraph")
     (case "V!1={i: T | vert(G!1)(i) AND V!1(i)}")
     (("1" (replace -1 -5 lr) (propax))
      ("2"
       (hide -1 -2 -4 -5 3)
       (install-rewrites "graph_ops")
       (assert)
       (apply-extensionality 1 :hide? t)
       (iff 1)
       (prop)
       (inst -2 "x!1")
       (prop))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: smaller
script:
  (""
   (skosimp*)
   (case "length(q!1)>1")
   (("1"
     (lemma "greatest_is")
     (inst -1 "lambda x: edge?(G!1)(s!1,x)" "1" "q!1")
     (("1"
       (assert)
       (prop)
       (("1"
         (skosimp*)
         (inst 1 "k!1")
         (prop)
         (("1"
           (expand "greatest?")
           (prop)
           (expand "good?")
           (expand "separable?")
           (prop)
           (case "k!1=length(q!1)-1")
           (("1"
             (replace -1 -3 lr)
             (expand "path_from?")
             (prop)
             (expand "from?")
             (prop)
             (replace -10 -3 lr)
             (propax))
            ("2" (assert))))
          ("2" (expand "path_from?") (prop) (expand "greatest?") (prop))
          ("3" (expand "greatest?") (prop))
          ("4"
           (expand "path_from?")
           (prop)
           (("1"
             (expand "path?")
             (prop)
             (("1"
               (install-rewrites "walks")
               (assert)
               (prop)
               (("1"
                 (skosimp*)
                 (prop)
                 (expand* "^" min empty_seq)
                 (assert)
                 (inst -7 "i!1-1+k!1"))
                ("2"
                 (skosimp*)
                 (prop)
                 (("1"
                   (lift-if -1)
                   (assert)
                   (prop)
                   (inst -10 "k!1-1+n!1")
                   (("1" (assert))
                    ("2"
                     (case "k!1=0")
                     (("1" (replace -1 4 lr) (assert)) ("2" (assert))))))
                  ("2"
                   (lift-if 1)
                   (expand* "^" min empty_seq)
                   (lift-if -1)
                   (prop)
                   (("1" (typepred "n!1") (assert)) ("2" (assert))
                    ("3" (typepred "n!1") (assert)) ("4" (assert))
                    ("5"
                     (inst -9 "k!1-1+n!1")
                     (("1" (assert)) ("2" (assert))))
                    ("6" (assert) (inst -9 "k!1-1+n!1") (assert))))))))
              ("2"
               (expand "finseq_appl")
               (skosimp*)
               (expand* "^" min empty_seq)
               (expand "o")
               (expand "gen_seq1")
               (lift-if -1)
               (assert)
               (lift-if)
               (prop)
               (("1"
                 (assert)
                 (typepred "j!1")
                 (expand "gen_seq1")
                 (expand "o")
                 (expand* "^" min empty_seq)
                 (assert))
                ("2" (assert) (typepred "j!1") (grind))
                ("3"
                 (assert)
                 (case "j!1 < 1")
                 (("1" (assert)) ("2" (grind))))
                ("4" (grind)) ("5" (grind))
                ("6"
                 (assert)
                 (case "j!1 < 1")
                 (("1"
                   (assert)
                   (inst -7 "0" "i!1-1+k!1")
                   (assert)
                   (prop)
                   (("1" (expand "from?") (prop) (assert))
                    ("2"
                     (assert)
                     (expand "greatest?")
                     (flatten)
                     (case "k!1=0")
                     (("1"
                       (replace -1 -5 lr)
                       (expand "from?")
                       (replace -1 -2 lr)
                       (assert)
                       (install-rewrites "graphs")
                       (assert))
                      ("2" (assert))))))
                  ("2" (assert) (typepred "j!1") (grind))))))))
            ("2"
             (expand "from?")
             (install-rewrites "walks")
             (assert)
             (expand* "^" min empty_seq)
             (prop)
             (lift-if 2)
             (lift-if 2)
             (assert))))))
        ("2"
         (expand "path_from?")
         (prop)
         (hide 2)
         (expand "path?")
         (prop)
         (expand "walk?")
         (prop)
         (expand "from?")
         (prop)
         (expand "finseq_appl")
         (inst -4 "0")
         (assert))))
      ("2"
       (hide 2)
       (lemma "finite_subset[T]")
       (inst -1 "vert(G!1)" "LAMBDA x: edge?[T](G!1)(s!1, x)")
       (prop)
       (hide -2 -3 2)
       (grind)
       (typepred "G!1")
       (inst -1 "dbl(s!1,x!1)")
       (prop)
       (inst -1 "x!1")
       (expand "dbl")
       (propax))))
    ("2"
     (hide 2)
     (expand "path_from?")
     (prop)
     (expand "from?")
     (prop)
     (expand "good?")
     (prop)
     (expand "separable?")
     (prop)
     (typepred "q!1")
     (case "length(q!1)=1")
     (("1" (replace -1 * lr) (assert)) ("2" (assert))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "one_wedge_s")
   (inst? -1)
   (prop)
   (skosimp*)
   (inst 1 "gen_seq1(G!1, s!1) o q!1 ^ (k!1, length(q!1) - 1)")
   (prop)
   (skosimp*)
   (prop)
   (("1"
     (hide -4 -5)
     (typepred "i!1")
     (install-rewrites "walks")
     (assert)
     (prop)
     (expand* "^" min empty_seq)
     (lift-if -2)
     (prop)
     (("1" (assert))
      ("2"
       (reveal -1 -2)
       (inst -1 "i!1-1+k!1")
       (("1" (assert)) ("2" (assert))))))
    ("2"
     (hide -2 -3 -4 -6)
     (install-rewrites "walks")
     (assert)
     (skosimp*)
     (lift-if -1)
     (prop)
     (("1"
       (reveal -4)
       (expand "path_from?")
       (prop)
       (expand "from?")
       (prop)
       (inst 2 "0")
       (assert))
      ("2" (expand* "^" min empty_seq) (inst 3 "i!2-1+k!1") (assert))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: stuck
script:
  (""
   (skosimp*)
   (expand "B")
   (prop)
   (inst -3 "emptyset[T]")
   (lemma "finite_sets[T].card_emptyset")
   (assert)
   (expand "separates")
   (prop)
   (("1" (expand "emptyset") (propax)) ("2" (expand "emptyset") (propax))
    ("3"
     (skosimp*)
     (case "G!1=del_verts(G!1, emptyset[T])")
     (("1"
       (replace -1 -2 rl)
       (hide -1)
       (lemma "walk_to_path_from")
       (inst? -1)
       (prop)
       (hide -2)
       (skosimp*)
       (delete -2)
       (case "length(p!1)>1")
       (("1"
         (lemma "one_edge_s")
         (inst -1 "G!1" "p!1" "s!1" "t!1")
         (prop)
         (skosimp*)
         (lemma "one_wedge_s")
         (inst -1 "G!1" "rev(p!2)" "t!1" "s!1")
         (("1"
           (prop)
           (("1"
             (skosimp*)
             (inst 1
              "rev( gen_seq1(G!1, t!1) o rev(p!2) ^ (k!2, length(rev(p!2)) - 1))")
             (("1"
               (prop)
               (("1"
                 (lemma "path?_rev")
                 (inst -1 "G!1"
                  " gen_seq1(G!1, t!1) o rev(p!2) ^ (k!2, length(rev(p!2)) - 1)")
                 (("1"
                   (expand "path_from?")
                   (prop)
                   (lemma "from_rev")
                   (inst -1
                    " gen_seq1(G!1, t!1) o rev(p!2) ^ (k!2, length(rev(p!2)) - 1)"
                    "t!1" "s!1")
                   (("1" (prop))
                    ("2" (expand "rev" 1) (typepred "p!2") (assert))))
                  ("2" (expand "rev" 1) (typepred "p!2") (assert))))
                ("2"
                 (skosimp*)
                 (prop)
                 (("1"
                   (hide -5 -6 -7 -9)
                   (install-rewrites "walks")
                   (assert)
                   (expand "^")
                   (lift-if -1)
                   (assert)
                   (prop)
                   (reveal -3)
                   (inst -1 "i!1")
                   (prop)
                   (expand "edge?")
                   (prop))
                  ("2"
                   (hide -5 -6 -7 -9)
                   (install-rewrites "walks")
                   (assert)
                   (expand "^")
                   (prop)
                   (lift-if -1)
                   (prop)
                   (("1" (assert))
                    ("2"
                     (lift-if 3)
                     (assert)
                     (inst -4 "length(p!2)-1-i!1")
                     (prop)
                     (("1" (assert)) ("2" (assert)) ("3" (assert))
                      ("4"
                       (assert)
                       (lemma "dbl_comm")
                       (inst -1 "seq(p!2)(i!1)" "t!1")
                       (replace -1 -2 lr)
                       (propax))))))))))
              ("2"
               (hide-all-but (-1 -7 -9 -10 1))
               (install-rewrites "walks")
               (assert))
              ("3" (expand "rev") (typepred "p!2") (assert))))
            ("2"
             (lemma "separable?_comm")
             (inst -1 "G!1" "s!1" "t!1")
             (expand "good?")
             (bddsimp))
            ("3"
             (lemma "from_rev")
             (lemma "path?_rev")
             (inst -1 "G!1" "p!2")
             (inst -2 "p!2" "s!1" "t!1")
             (expand "path_from?")
             (bddsimp))))
          ("2" (expand "rev") (typepred "p!2") (propax))))
        ("2"
         (hide 2)
         (expand "path_from?")
         (prop)
         (expand "from?")
         (prop)
         (expand "good?")
         (prop)
         (expand "separable?")
         (prop)
         (typepred "p!1")
         (case "length(p!1)=1")
         (("1" (replace -1 * lr) (assert)) ("2" (assert))))))
      ("2"
       (hide -1 2)
       (install-rewrites "graph_ops")
       (assert)
       (expand "difference")
       (expand "member")
       (prop)
       (apply-extensionality 2 :hide? t)
       (("1" (apply-extensionality 1 :hide? t))
        ("2" (apply-extensionality 1 :hide? t))
        ("3"
         (typepred "vert(G!1)")
         (expand "is_finite")
         (skosimp*)
         (inst + "N!1" "f!1")
         (skosimp*)
         (expand "restrict")
         (expand "injective?")
         (inst?)
         (assert))
        ("4"
         (typepred "edges(G!1)")
         (expand "is_finite")
         (skosimp*)
         (inst + "N!1" "f!1")
         (skosimp*)
         (expand "restrict")
         (assert)
         (inst?)
         (assert))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: extension
script:
  (""
   (skosimp*)
   (expand "many_ind")
   (skosimp*)
   (typepred "ips!1")
   (inst 1 "ips!1")
   (prop)
   (expand "st_path_set?")
   (skosimp*)
   (inst -5 "p1!1")
   (prop)
   (lemma "subgraph_paths")
   (inst -1 "G!1" "GG!1" "p1!1" "s!1" "t!1")
   (prop))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: edit_omit
script:
  (""
   (skosimp*)
   (prop)
   (("1"
     (expand "subset?")
     (expand "member")
     (skosimp*)
     (expand "image")
     (skosimp*)
     (inst -2 "x!2" "x!2")
     (prop)
     (("1" (replace -2 -1 rl) (propax)) ("2" (replace -2 -1 rl) (propax))
      ("3" (replace -3 -2 rl) (propax)) ("4" (typepred "x!2") (propax))
      ("5" (typepred "x!2") (propax)) ("6" (typepred "x!2") (propax))))
    ("2"
     (expand "injective?")
     (skosimp*)
     (typepred "x1!1")
     (typepred "x2!1")
     (expand "restrict")
     (inst -6 "x1!1" "x2!1")
     (prop))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: stronger_thm
script:
  (""
   (skosimp*)
   (lemma "ips_lem1")
   (inst -1 "V!1" "ips!1" "second!1")
   (prop)
   (lemma "function_image_aux[(ips!1),T].card_injective_image")
   (inst -1 "restrict[prewalk,(ips!1),T](second!1)" "ips!1")
   (expand "restrict")
   (case "card[T](image(second!1,ips!1))=card[prewalk](ips!1)")
   (("1"
     (replace -6 -1 lr)
     (lemma "same_card_subset")
     (hide -3 -5 -6)
     (inst -1 "image(second!1,ips!1)" "V!1")
     (prop))
    ("2"
     (hide (-2 -3 -4 2))
     (hide -2)
     (grind)
     (case "( LAMBDA (s: ((ips!1))): TRUE) = ips!1")
     (("1"
       (replace -1 * lr)
       (hide -1)
       (expand "image")
       (expand "restrict")
       (case "{y: T |
                                                                       EXISTS (x:
                                                                                 (restrict[prewalk[T], ((ips!1)), boolean](ips!1))):
                                                                         y = second!1(x)}= {y:T| exists (x:(ips!1)):y=second!1(x)}")
       (("1"
         (hide -1)
         (grind)
         (case "(lambda (s:((ips!1))):TRUE) = ips!1")
         (("1"
           (hide -1 -2)
           (lemma "finite_sets_card_eq[prewalk,T].card_eq_bij")
           (inst -1 "ips!1"
            "{y: T | EXISTS (x: (ips!1)): y = second!1(x)}")
           (("1"
             (prop)
             (("1" (replace -1 1 lr) (propax))
              ("2"
               (hide 2 3)
               (inst 1 "lambda (p:(ips!1)):second!1(p)")
               (("1"
                 (expand "bijective?")
                 (prop)
                 (("1" (reveal -7) (grind))
                  ("2"
                   (expand "surjective?")
                   (skosimp*)
                   (typepred "y!1")
                   (grind))))
                ("2" (skosimp*) (inst 1 "p!1"))))))
            ("2"
             (lemma
              "finite_sets_eq[prewalk,T].surjection_from_finite_set")
             (inst -1 "ips!1"
              "{y: T | EXISTS (x: (ips!1)): y = second!1(x)}")
             (prop)
             (("1" (grind))
              ("2"
               (hide 2 3)
               (inst 1 "second!1")
               (("1"
                 (expand "surjective?")
                 (skosimp*)
                 (typepred "y!1")
                 (skosimp*)
                 (inst 1 "x!1")
                 (assert))
                ("2" (skosimp*) (inst 1 "x1!1"))))))))
          ("2" (expand "restrict") (propax))))
        ("2"
         (grind)
         (apply-extensionality 1 :hide? t)
         (iff)
         (prop)
         (("1" (skosimp*) (inst 1 "x!2"))
          ("2" (skosimp*) (inst 1 "x!2"))))))
      ("2" (apply-extensionality 1 :hide? t))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: change_ed
script:
  (""
   (skosimp*)
   (lemma
    "function_inverse_def[(ips!1),(V!1)].surjective_inverse_exists")
   (lemma "ips_lem2")
   (inst? -1)
   (prop)
   (inst -2 "second!1")
   (("1"
     (skosimp*)
     (inst 1 "g!1")
     (prop)
     (("1"
       (expand "image")
       (apply-extensionality 1 :hide? t)
       (iff)
       (prop)
       (("1"
         (skosimp*)
         (expand "inverse?")
         (inst -3 "x!2")
         (prop)
         (("1"
           (typepred "x!1")
           (typepred "g!1(x!2)")
           (replace -5 -2 rl)
           (propax))
          ("2" (typepred "g!1(x!2)") (replace -3 -2 rl) (propax))))
        ("2"
         (inst 1 "second!1(x!1)")
         (("1"
           (decompose-equality -2)
           (inst -4 "x!1" "g!1(second!1(x!1))")
           (prop)
           (("1"
             (expand "inverse?")
             (inst -4 "second!1(x!1)")
             (prop)
             (("1" (expand "restrict") (assert))
              ("2" (inst 1 "x!1") (expand "restrict") (propax))))
            ("2" (typepred "g!1(second!1(x!1))") (propax))))
          ("2"
           (inst -4 "x!1" "x!1")
           (prop)
           (expand "restrict")
           (propax))))))
      ("2"
       (expand "inverse?")
       (skosimp*)
       (inst -2 "v!1")
       (expand "image")
       (decompose-equality -1)
       (inst -1 "v!1")
       (iff)
       (prop)
       (("1" (expand "restrict") (propax))
        ("2" (skosimp*) (inst 1 "x!1") (expand "restrict") (assert))
        ("3" (typepred "v!1") (propax)) ("4" (typepred "v!1") (propax))))
      ("3"
       (expand "image")
       (skosimp*)
       (decompose-equality -2)
       (inst -1 "second!1(q2!1)")
       (iff)
       (prop)
       (("1"
         (inst -5 "g!1(second!1(q2!1))" "q2!1")
         (prop)
         (("1"
           (expand "inverse?")
           (inst -5 "second!1(q2!1)")
           (prop)
           (("1" (expand "restrict") (propax))
            ("2" (inst 1 "q2!1") (expand "restrict") (propax))))
          ("2" (typepred "g!1(second!1(q2!1))") (propax))
          ("3" (typepred "g!1(second!1(q2!1))") (propax))
          ("4" (typepred "g!1(second!1(q2!1))") (propax))))
        ("2" (typepred "q2!1") (inst 2 "q2!1"))))))
    ("2"
     (expand "image")
     (decompose-equality -1)
     (prop)
     (("1"
       (skosimp*)
       (inst -1 "second!1(x1!1)")
       (iff)
       (prop)
       (inst 2 "x1!1"))
      ("2"
       (expand "surjective?")
       (skosimp*)
       (typepred "y!1")
       (inst -2 "y!1")
       (iff)
       (prop)
       (skosimp*)
       (inst 1 "x!1")
       (expand "restrict")
       (assert))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "good?")
   (expand "separable?")
   (prop)
   (expand "st_path_set?")
   (inst -3 "p!1")
   (prop)
   (expand "path_from?")
   (prop)
   (hide -1)
   (expand "from?")
   (prop)
   (typepred "p!1")
   (case "length(p!1)=1")
   (("1" (replace -1 * lr) (assert)) ("2" (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: Mgraph change
script:
  (""
   (skosimp*)
   (case-replace "length(p!1)>1")
   (("1"
     (hide -4)
     (expand "st_path_set?")
     (inst? -3)
     (prop)
     (expand "path_from?")
     (prop)
     (expand "path?")
     (prop)
     (hide -2)
     (expand "walk?")
     (prop)
     (hide -1)
     (inst -1 "0")
     (assert)
     (expand "secoo")
     (expand "edge?")
     (expand "finseq_appl")
     (prop)
     (expand "Mgraph")
     (expand "union")
     (expand "member")
     (prop)
     (("1"
       (expand "Kgraph")
       (expand "subgraph")
       (prop)
       (inst -2 "seq(p!1)(1)")
       (assert)
       (prop)
       (("1"
         (expand "difference")
         (expand "member")
         (prop)
         (expand "Hverts")
         (expand "path_verts")
         (inst 1 "p!1^(0,1)")
         (("1"
           (expand "walk_from?")
           (prop)
           (("1" (expand "^") (expand "from?") (prop))
            ("2" (expand* "^" "min"))
            ("3"
             (expand "walk?")
             (prop)
             (("1"
               (expand "good?")
               (prop)
               (expand "verts_in?")
               (expand "^")
               (skosimp*)
               (typepred "i!1")
               (expand "^")
               (case "i!1=0")
               (("1"
                 (replace -1 * lr)
                 (assert)
                 (delete -2)
                 (reveal -6)
                 (expand "separates")
                 (prop)
                 (hide 3)
                 (expand "del_verts")
                 (expand "difference")
                 (expand "member")
                 (prop)
                 (("1"
                   (expand "from?")
                   (prop)
                   (replace -4 1 lr)
                   (propax))
                  ("2"
                   (expand "from?")
                   (prop)
                   (replace -5 -1 lr)
                   (propax))))
                ("2"
                 (case "i!1=1")
                 (("1"
                   (replace -1 * lr)
                   (assert)
                   (delete -2)
                   (delete 1)
                   (expand "del_verts")
                   (expand "difference")
                   (expand "member")
                   (propax))
                  ("2" (assert))))))
              ("2"
               (skosimp*)
               (expand "^")
               (case "n!1=0")
               (("1"
                 (replace -1 * lr)
                 (assert)
                 (expand "edge?")
                 (expand "del_verts")
                 (expand "finseq_appl")
                 (skosimp*)
                 (expand "dbl")
                 (prop)
                 (("1"
                   (reveal -6)
                   (expand "separates")
                   (prop)
                   (replace -1 * lr)
                   (expand "from?")
                   (prop)
                   (replace -7 -4 lr)
                   (propax))
                  ("2" (replace -1 * lr) (propax))))
                ("2" (assert))))))))
          ("2" (install-rewrites "walks[T]") (assert))))
        ("2" (expand "dbl") (propax))))
      ("2"
       (expand "attach_edges")
       (skosimp*)
       (lemma "dbl_eq")
       (inst -1 "w!1" "seq(p!1)(0)" "seq(p!1)(1)" "s!1")
       (prop)
       (("1"
         (reveal -6)
         (expand "separates")
         (prop)
         (expand "intersection")
         (expand "member")
         (prop)
         (replace -1 -4 rl)
         (expand "from?")
         (prop)
         (replace -6 -4 lr)
         (propax))
        ("2"
         (expand "intersection")
         (expand "member")
         (prop)
         (replace -2 -4 rl)
         (propax))))))
    ("2" (lemma "long_ipss_paths") (inst? -1) (inst -1 "p!1") (prop))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: change Mg tcc
script:
  (""
   (skosimp*)
   (case-replace "length(p!1)>1")
   (("1"
     (hide -4)
     (expand "st_path_set?")
     (inst? -3)
     (prop)
     (expand "path_from?")
     (prop)
     (expand "path?")
     (prop)
     (hide -2)
     (expand "walk?")
     (expand "finseq_appl")
     (prop)
     (hide -1)
     (inst -1 "length(p!1)-2")
     (("1"
       (assert)
       (expand "secpp")
       (expand "edge?")
       (prop)
       (expand "Mgraph")
       (expand "union")
       (expand "member")
       (prop)
       (("1"
         (expand "Kgraph")
         (expand "subgraph")
         (prop)
         (inst -2 "seq(p!1)(length(p!1)-2)")
         (assert)
         (prop)
         (("1"
           (expand "difference")
           (expand "member")
           (prop)
           (expand "Hverts")
           (expand "path_verts")
           (expand "finseq_appl")
           (inst 1 "rev(p!1^(length(p!1)-2,length(p!1)-1))")
           (("1"
             (expand "walk_from?")
             (prop)
             (("1"
               (expand* "^" "min")
               (expand "rev")
               (expand "from?")
               (prop))
              ("2" (expand* "^" "min") (expand "rev") (propax))
              ("3"
               (expand "walk?")
               (expand "finseq_appl")
               (prop)
               (("1"
                 (expand "good?")
                 (prop)
                 (expand "verts_in?")
                 (expand* "^" "min")
                 (expand "rev")
                 (skosimp*)
                 (typepred "i!1")
                 (expand "^")
                 (case "i!1=0")
                 (("1"
                   (replace -1 * lr)
                   (assert)
                   (delete -2)
                   (reveal -6)
                   (expand "separates")
                   (prop)
                   (hide 3)
                   (expand "del_verts")
                   (expand "difference")
                   (expand "member")
                   (prop)
                   (("1"
                     (expand "from?")
                     (prop)
                     (replace -5 1 lr)
                     (propax))
                    ("2"
                     (expand "from?")
                     (prop)
                     (replace -6 -1 lr)
                     (propax))))
                  ("2"
                   (expand "min")
                   (case "length
                                  (rev((# length := 2,
                                          seq
                                            := LAMBDA (x: below[min(2, 2)]):
                                                 p!1`seq(x + length(p!1) - 2) #))) = 2")
                   (("1"
                     (replace -1 * lr)
                     (case "i!1=1")
                     (("1"
                       (replace -1 * lr)
                       (assert)
                       (delete -2)
                       (delete 1)
                       (delete -2)
                       (expand "del_verts")
                       (expand "difference")
                       (expand "member")
                       (propax))
                      ("2" (assert))))
                    ("2"
                     (hide-all-but (-4 -5 1 2))
                     (install-rewrites "walks[T]")
                     (assert))
                    ("3" (skosimp*) (expand "min") (propax))
                    ("4" (skosimp) (typepred "x!1") (assert))))))
                ("2"
                 (skosimp*)
                 (expand* "^" "min")
                 (expand "rev")
                 (case "n!1=0")
                 (("1"
                   (replace -1 * lr)
                   (assert)
                   (expand "edge?")
                   (expand "del_verts")
                   (expand "dbl")
                   (prop)
                   (("1"
                     (reveal -6)
                     (expand "separates")
                     (prop)
                     (expand "from?")
                     (prop)
                     (case "{t: T | t = seq(p!1)(length(p!1) - 2) OR t = seq(p!1)(length(p!1) - 1)}={t: T | t = seq(p!1)(length(p!1) - 1) OR t = seq(p!1)(length(p!1) - 2)}")
                     (("1" (replace -1 -5 lr) (propax))
                      ("2"
                       (hide-all-but (-5 -6 1 2 3))
                       (grind)
                       (apply-extensionality 1 :hide? t)
                       (iff)
                       (bddsimp))))
                    ("2"
                     (skosimp*)
                     (prop)
                     (("1"
                       (reveal -6)
                       (expand "separates")
                       (prop)
                       (hide -3 -4)
                       (replace -1 -2 lr)
                       (expand "from?")
                       (prop)
                       (replace -6 -2 lr)
                       (propax))
                      ("2" (replace -1 -2 lr) (propax))))))
                  ("2" (assert))))))))
            ("2" (expand "^") (expand "rev") (assert))))
          ("2" (expand "dbl") (propax))))
        ("2"
         (expand "attach_edges")
         (skosimp*)
         (expand "finseq_appl")
         (lemma "dbl_eq")
         (inst -1 "w!1" "seq(p!1)(length(p!1)-2)"
          "seq(p!1)(length(p!1)-1)" "t!1")
         (prop)
         (("1"
           (reveal -6)
           (expand "separates")
           (prop)
           (expand "intersection")
           (expand "member")
           (prop)
           (replace -1 -4 rl)
           (propax))
          ("2"
           (expand "intersection")
           (expand "member")
           (prop)
           (expand "from?")
           (prop)
           (replace -7 -2 lr)
           (replace -2 -1 lr)
           (replace -1 -4 rl)
           (propax))))))
      ("2" (assert))))
    ("2" (lemma "long_ipst_paths") (inst? -1) (inst -1 "p!1") (prop))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (lemma "long_ipss_paths")
   (inst? -1)
   (inst -1 "p!1")
   (prop)
   (lemma "ipss_W")
   (inst? -1)
   (inst -1 "p!1")
   (prop)
   (expand "st_path_set?")
   (inst -4 "p!1")
   (prop)
   (expand "path_from?")
   (prop)
   (expand "from?")
   (prop)
   (expand "separates")
   (prop)
   (expand "good?")
   (prop)
   (expand "separable?")
   (prop)
   (hide (-1 -8 5))
   (case "length(p!1)=2")
   (("1"
     (replace -1 * lr)
     (assert)
     (hide (-5 5))
     (expand "secoo")
     (expand "finseq_appl")
     (replace -3 -4 lr)
     (propax))
    ("2" (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (lemma "long_ipst_paths")
   (inst? -1)
   (inst -1 "p!1")
   (prop)
   (lemma "ipst_W")
   (inst? -1)
   (inst -1 "p!1")
   (prop)
   (expand "st_path_set?")
   (inst -4 "p!1")
   (prop)
   (expand "path_from?")
   (prop)
   (expand "from?")
   (prop)
   (expand "separates")
   (prop)
   (expand "good?")
   (prop)
   (expand "separable?")
   (prop)
   (hide (-1 -8 5))
   (case "length(p!1)=2")
   (("1"
     (replace -1 * lr)
     (assert)
     (hide (-5 5))
     (expand "secpp")
     (expand "finseq_appl")
     (replace -1 * lr)
     (assert))
    ("2" (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: new_tcc_second
script:
  (""
   (skosimp*)
   (case "FORALL (q, q1):
                                        (ipss!1(q) AND ipss!1(q1) AND q /= q1 IMPLIES
                                          secoo(q) /= secoo(q1))")
   (("1"
     (lemma "ips_lem1")
     (lemma "ips_lem2")
     (inst -1 "W!1" "ipss!1"
      " extend[prewalk, {p: prewalk | length(p) > 1}, T, s!1](secoo)")
     (inst -2 "W!1" "ipss!1"
      " extend[prewalk, {p: prewalk | length(p) > 1}, T, s!1](secoo)")
     (lemma "long_ipss_2")
     (copy -1)
     (inst? -1)
     (inst? -2)
     (prop)
     (("1"
       (expand "subset?")
       (expand "member")
       (expand "image")
       (expand "restrict")
       (apply-extensionality 1 :hide? t)
       (iff 1)
       (prop)
       (("1"
         (skosimp*)
         (inst -2 "x!1")
         (prop)
         (inst 1 "x!2")
         (("1"
           (typepred "x!2")
           (expand "restrict")
           (expand "extend")
           (propax))
          ("2" (typepred "x!2") (expand "restrict") (propax))))
        ("2"
         (inst -2 "x!1")
         (prop)
         (("1"
           (decompose-equality -4)
           (inst -1 "x!1")
           (iff -1)
           (prop)
           (skosimp*)
           (inst 1 "x!2")
           (("1"
             (expand "extend")
             (typepred "x!2")
             (inst -8 "x!2")
             (assert)
             (lift-if -3)
             (assert))
            ("2"
             (prop)
             (("1" (typepred "x!2") (inst -8 "x!2") (assert))
              ("2" (typepred "x!2") (expand "restrict") (propax))))))
          ("2"
           (decompose-equality -3)
           (inst -1 "x!1")
           (iff -1)
           (prop))))))
      ("2"
       (hide -3 -4 -6 -7 -8 -9 2)
       (expand "image")
       (apply-extensionality 1 :hide? t)
       (iff 1)
       (prop)
       (("1"
         (skosimp*)
         (typepred "x!2")
         (decompose-equality -5)
         (inst -1 "x!1")
         (iff -1)
         (prop)
         (inst 2 "x!2")
         (("1" (expand "extend") (propax))
          ("2" (typepred "x!2") (expand "restrict") (propax))))
        ("2"
         (decompose-equality -2)
         (inst -1 "x!1")
         (iff -1)
         (prop)
         (skosimp*)
         (inst 1 "x!2")
         (("1"
           (expand "extend")
           (reveal -3 -6 -7 -8)
           (inst -1 "x!2")
           (lift-if -5)
           (assert))
          ("2"
           (prop)
           (("1"
             (typepred "x!2")
             (inst -6 "x!2")
             (reveal -7 -8 -9)
             (assert))
            ("2" (grind))))))))
      ("3"
       (skosimp*)
       (prop)
       (("1"
         (expand "subset?")
         (expand "member")
         (inst -2 "secoo(q!1)")
         (("1"
           (prop)
           (("1" (expand "extend") (inst -4 "q!1") (prop) (assert))
            ("2"
             (hide -4 3)
             (expand "image")
             (inst 1 "q!1")
             (expand "extend")
             (lift-if 1)
             (inst -3 "q!1")
             (prop)
             (assert))))
          ("2" (inst -3 "q!1") (prop) (assert))))
        ("2"
         (inst -6 "q!1")
         (inst -7 "q1!1")
         (hide 2)
         (inst -8 "q!1" "q1!1")
         (prop)
         (expand "extend")
         (lift-if -5)
         (assert))))
      ("4"
       (hide 3)
       (skosimp*)
       (inst -1 "q!1")
       (inst -2 "q1!1")
       (prop)
       (("1"
         (expand "extend")
         (assert)
         (lemma "ipss_W")
         (inst? -1)
         (inst -1 "q!1")
         (prop))
        ("2"
         (typepred "q1!1")
         (expand "extend")
         (assert)
         (lemma "ipss_W")
         (inst? -1)
         (inst -1 "q!1")
         (assert))
        ("3"
         (inst? -6)
         (inst -6 "q1!1")
         (expand "extend")
         (lift-if -5)
         (assert))))
      ("5" (assert)) ("6" (assert))))
    ("2"
     (hide 2)
     (expand "ind_prewalk_set?")
     (skosimp*)
     (inst -7 "q!1" "q1!1")
     (prop)
     (expand "independent?")
     (expand "secoo")
     (expand "finseq_appl")
     (inst -1 "1" "1")
     (assert)
     (lemma "long_ipss_2")
     (lemma "long_ipss_2")
     (inst? -1)
     (inst? -2)
     (inst -1 "q!1")
     (inst -2 "q1!1")
     (assert))
    ("3"
     (skosimp*)
     (lemma "long_ipss_2")
     (inst? -1)
     (inst -1 "q1!1")
     (assert))
    ("4"
     (skosimp*)
     (lemma "long_ipss_2")
     (inst? -1)
     (inst -1 "q!1")
     (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: from new ind_path_set_secoo
script:
  (""
   (skosimp*)
   (case "FORALL (q, q1):
                                                      (ipst!1(q) AND ipst!1(q1) AND q /= q1 IMPLIES
                                                        secpp(q) /= secpp(q1))")
   (("1"
     (lemma "ips_lem1")
     (lemma "ips_lem2")
     (inst -1 "W!1" "ipst!1"
      " extend[prewalk, {p: prewalk | length(p) > 1}, T, s!1](secpp)")
     (inst -2 "W!1" "ipst!1"
      " extend[prewalk, {p: prewalk | length(p) > 1}, T, s!1](secpp)")
     (lemma "long_ipst_2")
     (copy -1)
     (inst? -1)
     (inst? -2)
     (prop)
     (("1"
       (expand "subset?")
       (expand "member")
       (expand "image")
       (expand "restrict")
       (apply-extensionality 1 :hide? t)
       (iff 1)
       (prop)
       (("1"
         (skosimp*)
         (inst -2 "x!1")
         (prop)
         (inst 1 "x!2")
         (("1"
           (typepred "x!2")
           (expand "restrict")
           (expand "extend")
           (propax))
          ("2" (typepred "x!2") (expand "restrict") (propax))))
        ("2"
         (inst -2 "x!1")
         (prop)
         (("1"
           (decompose-equality -4)
           (inst -1 "x!1")
           (iff -1)
           (prop)
           (skosimp*)
           (inst 1 "x!2")
           (("1"
             (expand "extend")
             (typepred "x!2")
             (inst -8 "x!2")
             (assert)
             (lift-if -3)
             (assert))
            ("2"
             (prop)
             (("1" (typepred "x!2") (inst -8 "x!2") (assert))
              ("2" (typepred "x!2") (expand "restrict") (propax))))))
          ("2"
           (decompose-equality -3)
           (inst -1 "x!1")
           (iff -1)
           (prop))))))
      ("2"
       (hide -3 -4 -6 -7 -8 -9 2)
       (expand "image")
       (apply-extensionality 1 :hide? t)
       (iff 1)
       (prop)
       (("1"
         (skosimp*)
         (typepred "x!2")
         (decompose-equality -5)
         (inst -1 "x!1")
         (iff -1)
         (prop)
         (inst 2 "x!2")
         (("1" (expand "extend") (propax))
          ("2" (typepred "x!2") (expand "restrict") (propax))))
        ("2"
         (decompose-equality -2)
         (inst -1 "x!1")
         (iff -1)
         (prop)
         (skosimp*)
         (inst 1 "x!2")
         (("1"
           (expand "extend")
           (reveal -3 -6 -7 -8)
           (inst -1 "x!2")
           (lift-if -5)
           (assert))
          ("2"
           (prop)
           (("1"
             (typepred "x!2")
             (inst -6 "x!2")
             (reveal -7 -8 -9)
             (assert))
            ("2" (grind))))))))
      ("3"
       (skosimp*)
       (prop)
       (("1"
         (expand "subset?")
         (expand "member")
         (inst -2 "secpp(q!1)")
         (("1"
           (prop)
           (("1" (expand "extend") (inst -4 "q!1") (prop) (assert))
            ("2"
             (hide -4 3)
             (expand "image")
             (inst 1 "q!1")
             (expand "extend")
             (lift-if 1)
             (inst -3 "q!1")
             (prop)
             (assert))))
          ("2" (inst -3 "q!1") (prop) (assert))))
        ("2"
         (inst -6 "q!1")
         (inst -7 "q1!1")
         (hide 2)
         (inst -8 "q!1" "q1!1")
         (prop)
         (expand "extend")
         (lift-if -5)
         (assert))))
      ("4"
       (hide 3)
       (skosimp*)
       (inst -1 "q!1")
       (inst -2 "q1!1")
       (prop)
       (("1"
         (expand "extend")
         (assert)
         (lemma "ipst_W")
         (inst? -1)
         (inst -1 "q!1")
         (prop))
        ("2"
         (typepred "q1!1")
         (expand "extend")
         (assert)
         (lemma "ipst_W")
         (inst? -1)
         (inst -1 "q!1")
         (assert))
        ("3"
         (inst? -6)
         (inst -6 "q1!1")
         (expand "extend")
         (lift-if -5)
         (assert))))
      ("5" (assert)) ("6" (assert))))
    ("2"
     (hide 2)
     (expand "ind_prewalk_set?")
     (skosimp*)
     (inst -7 "q!1" "q1!1")
     (prop)
     (expand "independent?")
     (expand "secpp")
     (expand "finseq_appl")
     (inst -1 "length(q!1)-2" "length(q1!1)-2")
     (("1"
       (assert)
       (lemma "long_ipst_2")
       (lemma "long_ipst_2")
       (inst? -1)
       (inst? -2)
       (inst -1 "q!1")
       (inst -2 "q1!1")
       (assert))
      ("2" (lemma "long_ipst_2") (inst? -1) (inst -1 "q1!1") (assert))
      ("3" (lemma "long_ipst_2") (inst? -1) (inst -1 "q!1") (assert))))
    ("3"
     (skosimp*)
     (lemma "long_ipst_2")
     (inst? -1)
     (inst -1 "q1!1")
     (assert))
    ("4"
     (lemma "long_ipst_2")
     (skosimp*)
     (inst? -1)
     (inst -1 "q!1")
     (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: sec_tcc
script:
  (""
   (skosimp*)
   (lemma "ind_path_set_secoo")
   (inst? -1)
   (prop)
   (inst -2 "p!1" "p!1")
   (lemma "ipss_W")
   (lemma "long_ipss_2")
   (expand "verts_of")
   (skosimp*)
   (expand "finseq_appl")
   (prop)
   (expand "ind_prewalk_set?")
   (delete -1)
   (expand "image")
   (hide -1 -2)
   (decompose-equality -1)
   (inst -1 "w!1")
   (iff)
   (prop)
   (skosimp*)
   (typepred "x!1")
   (delete -1)
   (inst -7 "x!1" "p!1")
   (expand "restrict")
   (prop)
   (("1"
     (expand "independent?")
     (inst -1 "1" "i!1")
     (assert)
     (reveal -4)
     (inst? -1)
     (copy -1)
     (inst -1 "x!1")
     (inst -2 "p!1")
     (prop)
     (("1"
       (replace -5 -12 lr)
       (expand "secoo")
       (expand "finseq_appl")
       (assert))
      ("2" (assert))
      ("3"
       (typepred "i!1")
       (case "i!1=0")
       (("1"
         (replace -1 -14 lr)
         (expand "separates")
         (prop)
         (expand "st_path_set?")
         (inst -11 "p!1")
         (prop)
         (expand "path_from?")
         (prop)
         (expand "from?")
         (prop)
         (replace -15 -2 lr)
         (replace -2 -11 lr)
         (propax))
        ("2" (assert))))
      ("4"
       (typepred "i!1")
       (case "i!1=length(p!1)-1")
       (("1"
         (replace -1 -14 lr)
         (expand "st_path_set?")
         (inst -11 "p!1")
         (prop)
         (expand "path_from?")
         (prop)
         (expand "from?")
         (prop)
         (replace -16 -3 lr)
         (expand "separates")
         (prop)
         (replace -3 -11 lr)
         (propax))
        ("2" (assert))))))
    ("2" (replace -1 -4 lr) (propax))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: sec_tcc
script:
  (""
   (skosimp*)
   (lemma "ind_path_set_secpp")
   (inst? -1)
   (prop)
   (inst -2 "q!1" "q!1")
   (lemma "ipst_W")
   (lemma "long_ipst_2")
   (expand "verts_of")
   (expand "finseq_appl")
   (skosimp*)
   (prop)
   (expand "ind_prewalk_set?")
   (delete -1)
   (expand "image")
   (hide -1 -2)
   (decompose-equality -1)
   (inst -1 "w!1")
   (iff)
   (prop)
   (skosimp*)
   (typepred "x!1")
   (delete -1)
   (inst -7 "x!1" "q!1")
   (expand "restrict")
   (prop)
   (("1"
     (expand "independent?")
     (inst -1 "length(x!1)-2" "i!1")
     (assert)
     (reveal -4)
     (inst? -1)
     (copy -1)
     (inst -1 "x!1")
     (inst -2 "q!1")
     (prop)
     (("1"
       (replace -5 -12 lr)
       (expand "secpp")
       (expand "finseq_appl")
       (assert))
      ("2" (assert))
      ("3"
       (typepred "i!1")
       (case "i!1=0")
       (("1"
         (replace -1 -14 lr)
         (expand "separates")
         (prop)
         (expand "st_path_set?")
         (inst -11 "q!1")
         (prop)
         (expand "path_from?")
         (prop)
         (expand "from?")
         (prop)
         (replace -2 -15 lr)
         (replace -15 -16 rl)
         (propax))
        ("2" (assert))))
      ("4"
       (case "i!1=length(q!1)-1")
       (("1"
         (replace -1 -13 lr)
         (expand "st_path_set?")
         (inst -10 "q!1")
         (prop)
         (expand "path_from?")
         (prop)
         (expand "from?")
         (prop)
         (replace -3 -15 lr)
         (expand "separates")
         (prop)
         (replace -14 -15 rl)
         (propax))
        ("2" (assert))))))
    ("2" (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: Put forall V inside
script:
  (""
   (skosimp*)
   (expand "B")
   (prop)
   (lemma "finite_sets_inductions[T].finite_set_induction_gen")
   (inst -1 "lambda V1: NOT separates(G!1,V1,s!1,t!1)")
   (case "exists V2: separates(G!1,V2,s!1,t!1)")
   (("1"
     (skosimp*)
     (prop)
     (("1" (inst -1 "V2!1"))
      ("2"
       (hide 2)
       (skosimp*)
       (reveal 1)
       (inst 1 "S!1")
       (prop)
       (("1" (inst -5 "S!1") (prop))
        ("2" (assert) (skosimp*) (inst -2 "V!1") (assert))))))
    ("2"
     (lemma "exists_tight")
     (inst? -1)
     (prop)
     (("1" (skosimp*) (inst 1 "V!1")) ("2" (skosimp*) (inst 1 "S!1"))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (typepred "ips!1")
   (lemma "finite_sets[prewalk].card_bij_inv")
   (inst -1 "card(ips!1)" "ips!1")
   (prop)
   (skosimp*)
   (inst 1 "image(f!1,{i:below[card(ips!1)] | i<j!1})")
   (("1"
     (prop)
     (("1"
       (expand "extend")
       (expand "subset?")
       (expand "member")
       (skosimp*)
       (prop))
      ("2"
       (expand "extend")
       (expand "image")
       (lemma "finite_sets[prewalk].card_bij_inv")
       (inst -1 "j!1"
        "LAMBDA (t: prewalk[T]):
                                       IF ips!1(t)
                                         THEN EXISTS (x: ({i: below[card(ips!1)] | i < j!1})):
                                                t = f!1(x)
                                       ELSE FALSE
                                       ENDIF")
       (("1"
         (prop)
         (hide 2 3)
         (inst 1 "restrict[below[card(ips!1)],below[j!1],(ips!1)](f!1)")
         (("1"
           (expand "bijective?")
           (prop)
           (("1"
             (expand "injective?")
             (skosimp*)
             (inst -2 "x1!1" "x2!1")
             (("1" (expand "restrict") (prop))
              ("2" (typepred "x2!1") (assert))
              ("3" (typepred "x1!1") (assert))))
            ("2"
             (expand "surjective?")
             (skosimp*)
             (typepred "y!1")
             (prop)
             (skosimp*)
             (typepred "x!1")
             (inst 1 "x!1")
             (assert)
             (expand "restrict")
             (assert))))
          ("2"
           (skosimp*)
           (expand "restrict")
           (typepred "x1!1")
           (inst 1 "x1!1")
           (assert))
          ("3" (skosimp*) (typepred "x!1") (assert))))
        ("2"
         (hide 2)
         (lemma "finite_subset[prewalk]")
         (inst -1 "ips!1"
          "LAMBDA (t: prewalk[T]):
                       IF ips!1(t)
                         THEN EXISTS (x:
                                        ({i: below[card[prewalk[T]](ips!1)] |
                                            i < j!1})):
                                t = f!1(x)
                       ELSE FALSE
                       ENDIF")
         (prop)
         (hide 2)
         (expand "subset?")
         (expand "member")
         (skosimp*)
         (prop))))))
    ("2"
     (lemma "finite_subset[prewalk]")
     (inst -1 "ips!1"
      "extend[prewalk[T], (ips!1), bool, FALSE]
                     (image[below[card(ips!1)], (ips!1)]
                          (f!1, {i: below[card[prewalk[T]](ips!1)] | i < j!1}))")
     (prop)
     (hide 2)
     (hide -1)
     (expand "subset?")
     (expand "member")
     (skosimp*)
     (expand "extend")
     (expand "image")
     (prop))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "many_ind")
   (skosimp*)
   (lemma "smaller_ips")
   (inst -1 "ips!1" "j!1")
   (assert)
   (skosimp*)
   (inst 1 "ips1!1")
   (prop)
   (("1"
     (hide -2 -3 -5 -6)
     (expand "ind_prewalk_set?")
     (skosimp*)
     (inst -4 "p1!1" "p2!1")
     (prop)
     (("1" (expand "subset?") (expand "member") (inst -3 "p1!1") (prop))
      ("2"
       (expand "subset?")
       (expand "member")
       (inst -3 "p2!1")
       (prop))))
    ("2"
     (expand "st_path_set?")
     (skosimp*)
     (inst -6 "p1!1")
     (prop)
     (expand "subset?")
     (expand "member")
     (inst -2 "p1!1")
     (prop))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "low_card_sep")
   (inst? -1)
   (prop)
   (skosimp*)
   (inst 1 "card(W!1)" "W!1")
   (prop)
   (hide -1 -2 -4)
   (expand "B")
   (prop)
   (reveal -3)
   (expand "B")
   (prop))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "min_B")
   (inst -1 "G!1" "k!1" "s!1" "t!1")
   (prop)
   (skosimp*)
   (inst -5 "i!1" "W!1")
   (prop)
   (lemma "few_many")
   (inst -1 "G!1" "i!1" "k!1" "s!1" "t!1")
   (prop))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "small_close")
   (inst? -1)
   (prop)
   (skosimp*)
   (case "card(V!1)=card(W!1)")
   (("1"
     (lemma "same_card_subset")
     (inst? -1)
     (prop)
     (replace -1 -5 lr)
     (propax))
    ("2"
     (lemma "card_subset")
     (inst? -1)
     (prop)
     (expand "B")
     (prop)
     (inst? -6)
     (prop)
     (replace -8 * lr)
     (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: Mg change
script:
  (""
   (skosimp*)
   (expand "good?")
   (prop)
   (expand "separable?")
   (prop)
   (expand "path_from?")
   (prop)
   (expand "path?")
   (prop)
   (expand "walk?")
   (expand "finseq_appl")
   (prop)
   (hide -5 -6)
   (expand "verts_in?")
   (expand "subset?")
   (expand "member")
   (expand "verts_of")
   (skosimp*)
   (expand "finseq_appl")
   (expand* "^" min empty_seq)
   (assert)
   (expand "Mgraph")
   (inst -4 "2+i!1")
   (expand "add")
   (expand "member")
   (prop)
   (("1"
     (expand "from?")
     (prop)
     (reveal -3)
     (inst -1 "0" "2+i!1")
     (assert))
    ("2"
     (expand "Kgraph")
     (expand "subgraph")
     (prop)
     (expand "difference")
     (expand "member")
     (assert)
     (expand "Hverts")
     (expand "path_verts")
     (hide 1)
     (inst 3 "rev(p!1^(2+i!1,length(p!1)-1))")
     (("1"
       (expand "walk_from?")
       (prop)
       (("1"
         (expand "from?")
         (prop)
         (hide -8)
         (install-rewrites "walks")
         (expand "rev")
         (expand "^")
         (typepred "i!1")
         (expand "^")
         (assert))
        ("2"
         (expand "rev")
         (expand "^")
         (typepred "i!1")
         (expand "^")
         (assert))
        ("3"
         (typepred "i!1")
         (expand* "^" "min")
         (expand "rev")
         (assert)
         (expand "walk?")
         (expand "finseq_appl")
         (prop)
         (("1"
           (expand "verts_in?")
           (skosimp*)
           (expand "del_verts")
           (expand "difference")
           (expand "member")
           (prop)
           (("1"
             (reveal -1)
             (inst -1 "length(p!1)-1-i!2")
             (expand "add")
             (prop)
             (("1" (replace -1 -4 lr) (propax))
              ("2"
               (expand "member")
               (expand "Kgraph")
               (expand "subgraph")
               (prop))))
            ("2"
             (inst -9 "seq(p!1)(length(p!1)-1-i!2)")
             (prop)
             (("1"
               (expand "secoo")
               (expand "finseq_appl")
               (reveal -4)
               (inst -1 "length(p!1) - 1 - i!2" "1")
               (assert))
              ("2" (inst 1 "length(p!1) - 1 - i!2"))))))
          ("2"
           (skosimp*)
           (expand "del_verts")
           (expand "edge?")
           (prop)
           (("1"
             (reveal -2)
             (inst -1 "length(p!1) - 2 - n!1")
             (("1" (assert) (expand "edge?") (propax)) ("2" (assert))))
            ("2"
             (reveal -2)
             (inst -1 "length(p!1) - 2 - n!1")
             (("1"
               (assert)
               (expand "edge?")
               (prop)
               (expand "Mgraph")
               (expand "union")
               (expand "member")
               (prop)
               (("1"
                 (expand "Kgraph")
                 (expand "subgraph")
                 (prop)
                 (lemma "dbl_comm")
                 (inst -1 "seq(p!1)(length(p!1) - 1 - n!1)"
                  "seq(p!1)(length(p!1) - 2 - n!1)")
                 (replace -1 2 lr)
                 (propax))
                ("2"
                 (expand "attach_edges")
                 (skosimp*)
                 (lemma "dbl_eq")
                 (inst -1 "w!1" "seq(p!1)(length(p!1)-2-n!1)"
                  "seq(p!1)(length(p!1)-1-n!1)" "s!1")
                 (prop)
                 (("1"
                   (inst -13 "w!1")
                   (prop)
                   (("1"
                     (reveal -4)
                     (inst -1 "0")
                     (assert)
                     (expand "from?")
                     (prop)
                     (hide -6 -12 -16)
                     (ground)
                     (expand "secoo")
                     (expand "finseq_appl")
                     (expand "edge?")
                     (prop)
                     (expand "Mgraph")
                     (expand "union")
                     (expand "member")
                     (prop)
                     (("1"
                       (expand "Kgraph")
                       (expand "subgraph")
                       (prop)
                       (replace -12 -1 lr)
                       (replace -3 -1 rl)
                       (replace -5 -1 rl)
                       (replace -4 -1 rl)
                       (propax))
                      ("2"
                       (expand "attach_edges")
                       (skosimp*)
                       (replace -12 -2 lr)
                       (lemma "dbl_eq")
                       (inst -1 "w!2" "s!1" "seq(p!1)(1)" "s!1")
                       (prop)
                       (("1" (replace -14 -2 rl) (assert))
                        ("2"
                         (replace -4 -5 lr)
                         (reveal -8)
                         (inst -1 "length(p!1)-2-n!1" "1")
                         (assert))))))
                    ("2"
                     (expand "intersection")
                     (expand "member")
                     (prop))
                    ("3" (inst 1 "length(p!1)-2-n!1"))))
                  ("2"
                   (expand "from?")
                   (prop)
                   (reveal -4)
                   (inst -1 "0" "length(p!1)-2-n!1")
                   (assert))))))
              ("2" (assert))))
            ("3"
             (skosimp*)
             (expand "dbl")
             (prop)
             (("1"
               (inst -11 "v!1")
               (prop)
               (("1"
                 (reveal -4)
                 (inst -1 "length(p!1)-1-n!1" "1")
                 (("1"
                   (assert)
                   (replace -3 -2 lr)
                   (expand "secoo")
                   (expand "finseq_appl")
                   (assert))
                  ("2" (assert))))
                ("2"
                 (inst 1 "length(p!1)-1-n!1")
                 (("1" (assert)) ("2" (assert))))))
              ("2"
               (inst -11 "v!1")
               (prop)
               (("1"
                 (reveal -4)
                 (inst -1 "length(p!1)-2-n!1" "1")
                 (("1"
                   (assert)
                   (expand "secoo")
                   (expand "finseq_appl")
                   (replace -3 -2 lr)
                   (assert))
                  ("2" (assert))))
                ("2"
                 (inst 1 "length(p!1)-2-n!1")
                 (("1" (assert)) ("2" (assert))))))))))))))
      ("2"
       (install-rewrites "walks")
       (assert)
       (expand* "^" "min")
       (assert)
       (hide -4)
       (typepred "i!1")
       (expand* "^" "min")
       (assert))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: Mg_adjust_tcc
script:
  (""
   (skosimp*)
   (expand "good?")
   (prop)
   (expand "separable?")
   (prop)
   (expand "path_from?")
   (prop)
   (expand "path?")
   (prop)
   (expand "walk?")
   (expand "finseq_appl")
   (prop)
   (hide -5 -6)
   (expand "verts_in?")
   (expand "subset?")
   (expand "member")
   (expand "verts_of")
   (expand "finseq_appl")
   (skosimp*)
   (expand* "^" min empty_seq)
   (assert)
   (expand "Mgraph")
   (inst -4 "i!1")
   (expand "add")
   (expand "member")
   (prop)
   (("1"
     (expand "from?")
     (prop)
     (reveal -3)
     (inst -1 "i!1" "length(q!1)-1")
     (typepred "i!1")
     (expand "^")
     (assert))
    ("2"
     (expand "Kgraph")
     (expand "subgraph")
     (prop)
     (expand "difference")
     (expand "member")
     (assert)
     (expand "Hverts")
     (expand "path_verts")
     (hide 1)
     (inst 3 "q!1^(0,i!1)")
     (("1"
       (expand "walk_from?")
       (prop)
       (("1"
         (expand "from?")
         (prop)
         (hide -8)
         (install-rewrites "walks")
         (expand "^")
         (propax))
        ("2" (typepred "i!1") (expand* "^" "min") (assert))
        ("3"
         (expand* "^" "min")
         (assert)
         (expand "walk?")
         (prop)
         (("1"
           (expand "verts_in?")
           (skosimp*)
           (expand "del_verts")
           (expand "difference")
           (expand "member")
           (prop)
           (("1"
             (reveal -1)
             (inst -1 "i!2")
             (expand "add")
             (prop)
             (("1" (replace -1 -4 lr) (propax))
              ("2"
               (expand "member")
               (expand "Kgraph")
               (expand "subgraph")
               (prop))))
            ("2"
             (inst -8 "seq(q!1)(i!2)")
             (prop)
             (("1"
               (expand "secpp")
               (expand "finseq_appl")
               (reveal -4)
               (inst -1 "i!2" "length(q!1)-2")
               (assert)
               (typepred "i!2")
               (typepred "i!1")
               (expand "^")
               (assert))
              ("2" (inst 1 "i!2"))))))
          ("2"
           (skosimp*)
           (expand "del_verts")
           (expand "edge?")
           (expand "finseq_appl")
           (prop)
           (("1"
             (reveal -2)
             (inst -1 "n!1")
             (assert)
             (typepred "i!1")
             (expand "^")
             (assert)
             (expand "edge?")
             (propax))
            ("2"
             (reveal -2)
             (inst -1 "n!1")
             (typepred "i!1")
             (expand* "^" "min")
             (assert)
             (expand "edge?")
             (prop)
             (expand "Mgraph")
             (expand "union")
             (expand "member")
             (prop)
             (("1" (expand "Kgraph") (expand "subgraph") (propax))
              ("2"
               (expand "attach_edges")
               (skosimp*)
               (lemma "dbl_eq")
               (inst -1 "w!1" "seq(q!1)(n!1)" "seq(q!1)(1+n!1)" "t!1")
               (prop)
               (("1"
                 (inst -13 "w!1")
                 (prop)
                 (("1"
                   (expand "secpp")
                   (expand "finseq_appl")
                   (reveal -5)
                   (inst -1 "n!1" "length(q!1)-2")
                   (assert))
                  ("2" (expand "intersection") (expand "member") (prop))
                  ("3" (inst 1 "n!1"))))
                ("2"
                 (inst -13 "w!1")
                 (prop)
                 (("1"
                   (reveal -5)
                   (inst -1 "1+n!1" "length(q!1)-2")
                   (replace -2 -4 lr)
                   (expand "secpp")
                   (expand "finseq_appl")
                   (assert))
                  ("2" (expand "intersection") (expand "member") (prop))
                  ("3" (inst 1 "1+n!1"))))))))
            ("3"
             (skosimp*)
             (expand "dbl")
             (prop)
             (("1"
               (inst -10 "v!1")
               (reveal -4)
               (prop)
               (("1"
                 (expand "secpp")
                 (inst -2 "n!1" "length(q!1)-2")
                 (typepred "i!1")
                 (expand* "^" "min")
                 (expand "finseq_appl")
                 (assert))
                ("2" (inst 1 "n!1") (assert))))
              ("2"
               (inst -10 "v!1")
               (prop)
               (("1"
                 (expand "secpp")
                 (expand "finseq_appl")
                 (reveal -4)
                 (inst -1 "1+n!1" "length(q!1)-2")
                 (typepred "i!1")
                 (expand* "^" "min")
                 (assert))
                ("2" (inst 1 "1+n!1") (assert))))))))))))
      ("2"
       (expand* "^" "min")
       (lift-if)
       (prop)
       (("1" (assert)) ("2" (assert))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: more_lem
script:
  (""
   (skosimp*)
   (lemma "ipss_W")
   (lemma "ipst_W")
   (lemma "long_ipss_2")
   (lemma "long_ipst_2")
   (lemma "Hst_intersect")
   (inst? -1)
   (inst? -2)
   (inst -2 "q!1")
   (inst -3 "G!1" "W!1" "ipss!1" "p!1" "s!1" "t!1")
   (inst? -4)
   (inst -4 "q!1")
   (inst -5 "G!1" "W!1" "ipss!1" "p!1" "s!1" "t!1")
   (lemma "uniq_w_ipss")
   (lemma "uniq_w_ipst")
   (copy -13)
   (copy -15)
   (bddsimp (-5 -12))
   (hide -3 -4 -5 -6)
   (lemma "p_Ht")
   (lemma "q_Hs")
   (inst -2 "G!1" "W!1" "p!1" "s!1" "t!1")
   (inst -1 "G!1" "W!1" "q!1" "s!1" "t!1")
   (bddsimp (-3 -5 -9 -14 -18))
   (bddsimp (-1 -2 -9 -15 -18))
   (bddsimp (-1 -2 -6 -7 -12))
   (bddsimp (-1 -2 -6 -7 -13))
   (bddsimp (-1 -2 -11 -12))
   (("1"
     (case "secoo(p!1)=secpp(q!1)")
     (("1"
       (prop)
       (("1"
         (expand "st_path_set?")
         (inst -7 "p!1")
         (inst -10 "q!1")
         (prop)
         (expand "empty?")
         (expand "member")
         (expand "intersection")
         (expand "member")
         (apply-extensionality 1 :hide? t)
         (("1"
           (iff)
           (prop)
           (("1"
             (expand "verts_of")
             (skosimp*)
             (expand "singleton")
             (expand "^")
             (expand "subset?")
             (expand "member")
             (inst -9 "x!1")
             (inst -10 "x!1")
             (prop)
             (("1" (inst -17 "x!1") (prop))
              ("2"
               (expand "finseq_appl")
               (typepred "i!1")
               (expand "^")
               (inst 1 "i!1-1")
               (("1" (assert))
                ("2"
                 (prop)
                 (("1"
                   (case "i!1=0")
                   (("1"
                     (replace -1 -4 lr)
                     (expand "secoo")
                     (expand "finseq_appl")
                     (assert))
                    ("2" (assert))))
                  ("2" (expand* "^" "min") (assert))))))
              ("3"
               (expand "finseq_appl")
               (inst 1 "i!2")
               (typepred "i!2")
               (expand* "^" "min")
               (case "i!2=length(q!1)-2")
               (("1"
                 (replace -1 -5 lr)
                 (expand "secpp")
                 (expand "finseq_appl")
                 (replace -5 -8 lr)
                 (assert))
                ("2" (assert))))
              ("4"
               (expand "finseq_appl")
               (inst 1 "i!1-1")
               (("1" (assert))
                ("2"
                 (typepred "i!1")
                 (prop)
                 (("1"
                   (case "i!1=0")
                   (("1"
                     (replace -1 -3 lr)
                     (assert)
                     (expand "secoo")
                     (expand "finseq_appl")
                     (assert))
                    ("2" (assert))))
                  ("2" (expand* "^" "min") (assert))))))))
            ("2"
             (expand "secoo")
             (expand "finseq_appl")
             (expand "singleton")
             (expand "verts_of")
             (inst 1 "0")
             (("1"
               (expand "^")
               (assert)
               (expand* "^" "min")
               (expand "finseq_appl")
               (assert))
              ("2" (expand* "^" "min") (assert))))
            ("3"
             (expand "singleton")
             (replace -5 -1 lr)
             (expand "secpp")
             (expand "verts_of")
             (expand "finseq_appl")
             (inst 1 "length(q!1)-2")
             (("1" (expand "^") (assert))
              ("2" (expand* "^" "min") (assert))))))
          ("2" (skosimp*) (expand* "^" "min") (assert))
          ("3" (skosimp*) (expand* "^" "min") (assert))))
        ("2"
         (hide (-2 -6 -7 -9 -15 -16 -17 -18 -19 1))
         (expand "intersection")
         (expand "member")
         (apply-extensionality 1 :hide? t)
         (("1"
           (expand "singleton")
           (iff)
           (prop)
           (("1"
             (expand "verts_of")
             (skosimp*)
             (expand "subset?")
             (expand "member")
             (expand* "^" "min")
             (expand "finseq_appl")
             (inst -5 "x!1")
             (inst -6 "x!1")
             (prop)
             (("1"
               (expand "empty?")
               (expand "member")
               (inst -12 "x!1")
               (bddsimp))
              ("2"
               (inst 1 "i!1-1")
               (("1" (assert))
                ("2"
                 (prop)
                 (("1"
                   (case "i!1=0")
                   (("1"
                     (replace -1 -3 lr)
                     (expand "secoo")
                     (expand "finseq_appl")
                     (assert))
                    ("2" (assert))))
                  ("2"
                   (expand* "^" "min")
                   (typepred "i!1")
                   (expand "^")
                   (assert))))))
              ("3"
               (inst 1 "i!2")
               (typepred "i!2")
               (expand* "^" "min")
               (case "i!2=length(q!1)-2")
               (("1"
                 (replace -1 -5 lr)
                 (expand "secpp")
                 (expand "finseq_appl")
                 (replace -5 -6 lr)
                 (assert))
                ("2" (assert))))
              ("4"
               (inst 1 "i!1-1")
               (("1" (assert))
                ("2"
                 (prop)
                 (("1"
                   (case "i!1=0")
                   (("1"
                     (replace -1 -2 lr)
                     (expand "secoo")
                     (expand "finseq_appl")
                     (assert))
                    ("2" (assert))))
                  ("2"
                   (expand* "^" "min")
                   (typepred "i!1")
                   (expand "^")
                   (assert))))))))
            ("2"
             (expand "verts_of")
             (inst 1 "0")
             (("1"
               (expand "finseq_appl")
               (expand* "^" "min")
               (expand "secoo")
               (expand "finseq_appl")
               (assert))
              ("2" (expand* "^" "min") (assert))))
            ("3"
             (expand "verts_of")
             (expand "secpp")
             (expand "finseq_appl")
             (inst 1 "length(q!1)-2")
             (("1" (expand "^") (replace -2 -1 lr) (assert))
              ("2" (expand* "^" "min") (assert))))))
          ("2" (skosimp*) (expand* "^" "min") (assert))
          ("3" (expand* "^" "min"))))))
      ("2"
       (hide (-1 -5 -6 -8 -9 -14 -15 -16 -17 -18 2))
       (prop)
       (expand "empty?")
       (expand "member")
       (skosimp*)
       (expand "intersection")
       (expand "member")
       (prop)
       (expand "subset?")
       (expand "member")
       (inst -4 "x!1")
       (inst -5 "x!1")
       (prop)
       (("1" (inst -10 "x!1") (bddsimp))
        ("2"
         (inst -9 "x!1")
         (prop)
         (expand "verts_of")
         (expand "finseq_appl")
         (skosimp*)
         (inst 2 "i!1-1")
         (("1" (expand* "^" "min") (assert))
          ("2"
           (prop)
           (("1"
             (case "i!1=0")
             (("1"
               (replace -1 * lr)
               (expand* "^" "min")
               (assert)
               (expand "secoo")
               (expand "finseq_appl")
               (replace -3 -6 lr)
               (expand "Hverts")
               (expand "path_verts")
               (skosimp*)
               (expand "walk_from?")
               (prop)
               (expand "walk?")
               (expand "finseq_appl")
               (prop)
               (expand "verts_in?")
               (inst -4 "length(w!1)-1")
               (expand "del_verts")
               (expand "difference")
               (expand "member")
               (prop)
               (replace -3 -9 rl)
               (propax))
              ("2" (assert))))
            ("2"
             (expand "^")
             (assert)
             (typepred "i!1")
             (expand* "^" "min")
             (assert))))))
        ("3"
         (expand "verts_of")
         (skosimp*)
         (inst 1 "i!2")
         (("1" (expand* "^" "min") (expand "finseq_appl") (assert))
          ("2"
           (typepred "i!2")
           (expand* "^" "min")
           (expand "finseq_appl")
           (assert)
           (case "i!2=length(q!1)-2")
           (("1"
             (replace -1 -5 lr)
             (expand "secpp")
             (expand "finseq_appl")
             (replace -5 -8 lr)
             (hide -4 -6 -11)
             (expand "Hverts")
             (expand "path_verts")
             (skosimp*)
             (expand "walk_from?")
             (prop)
             (expand "walk?")
             (prop)
             (hide -6)
             (expand "verts_in?")
             (inst -5 "length(w!1)-1")
             (expand "del_verts")
             (expand "difference")
             (expand "member")
             (prop)
             (replace -4 2 lr)
             (propax))
            ("2" (assert))))))
        ("4"
         (expand "verts_of")
         (expand "finseq_appl")
         (skosimp*)
         (inst 1 "i!1-1")
         (("1" (expand "^" (-1 1)) (assert))
          ("2"
           (prop)
           (("1"
             (case "i!1=0")
             (("1"
               (replace -1 -2 lr)
               (expand "^" -2)
               (assert)
               (inst 2 "i!2")
               (("1" (expand "^") (propax))
                ("2"
                 (typepred "i!2")
                 (expand* "^" "min")
                 (case "i!2=length(q!1)-2")
                 (("1"
                   (replace -1 -5 lr)
                   (replace -5 -4 rl)
                   (expand "secoo")
                   (expand "secpp")
                   (expand "finseq_appl")
                   (propax))
                  ("2" (assert))))))
              ("2" (assert))))
            ("2"
             (expand* "^" "min")
             (assert)
             (typepred "i!1")
             (expand* "^" "min")
             (assert))))))))))
    ("2"
     (hide 2 3)
     (reveal -6)
     (inst? -1)
     (skosimp*)
     (inst -1 "p!1" "w!1")
     (prop))
    ("3" (propax))
    ("4"
     (hide (-3 -7 -8 -12 -13 -14 -15 2 3))
     (expand "st_path_set?")
     (inst -3 "p!1")
     (prop))
    ("5"
     (hide 2 3)
     (skosimp*)
     (reveal -5)
     (inst?)
     (inst -1 "q!1" "w!1")
     (prop))
    ("6"
     (hide 3 4)
     (reveal -6)
     (inst? -1)
     (skosimp*)
     (inst -1 "p!1" "w!2")
     (prop))
    ("7" (propax))
    ("8"
     (hide 3 4)
     (hide -6 -7 -8 -11 -12 -13 -14 -14 -15)
     (expand "st_path_set?")
     (inst -3 "p!1")
     (prop))
    ("9" (propax)) ("10" (propax)) ("11" (propax)) ("12" (propax))
    ("13"
     (hide 2 3)
     (hide -3 -4 -5 -12 -13 -14 -15 -16 -17)
     (expand "st_path_set?")
     (inst -4 "q!1")
     (prop))
    ("14"
     (hide 3 4)
     (hide -3 -4 -11 -12 -13 -14 -15 -16)
     (expand "st_path_set?")
     (inst -4 "q!1")
     (prop))
    ("15" (propax))
    ("16"
     (hide 3 4)
     (hide -3 -4 -11 -12 -13 -14 -15 -16)
     (expand "st_path_set?")
     (inst -4 "q!1")
     (prop))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: We changed universal quantif on w to consequent
script:
  (""
   (skosimp*)
   (case "empty?[prewalk](ipss!1)")
   (("1"
     (lemma "surjective_inverse_exists[(ipss!1),(W!1)]")
     (inst -1 "second!1")
     (("1"
       (skosimp*)
       (inst 1 "g!1")
       (prop)
       (("1"
         (expand "inverse?")
         (expand "image")
         (apply-extensionality 1 :hide? t)
         (iff)
         (prop)
         (("1"
           (skosimp*)
           (inst -2 "x!2")
           (prop)
           (("1"
             (expand "restrict")
             (typepred "x!2")
             (decompose-equality -8)
             (inst -1 "x!2")
             (iff)
             (prop)
             (skosimp*)
             (typepred "x!3")
             (expand "empty?")
             (inst -9 "x!3")
             (expand "member")
             (propax))
            ("2"
             (expand "restrict")
             (decompose-equality -5)
             (typepred "x!2")
             (inst -3 "x!2")
             (iff)
             (prop)
             (skosimp*)
             (inst 1 "x!3")
             (assert))))
          ("2"
           (expand "empty?")
           (inst -3 "x!1")
           (expand "member")
           (propax))))
        ("2"
         (expand "inverse?")
         (skosimp*)
         (inst -2 "w!1")
         (prop)
         (("1" (expand "restrict") (propax))
          ("2"
           (expand "image")
           (decompose-equality -5)
           (inst -1 "w!1")
           (iff)
           (prop)
           (skosimp*)
           (typepred "x!1")
           (expand "empty?")
           (inst -6 "x!1")
           (expand "member")
           (propax))))))
      ("2"
       (hide 2)
       (prop)
       (("1" (skosimp*) (replace -4 1 rl) (grind))
        ("2"
         (expand "restrict")
         (expand "surjective?")
         (skosimp*)
         (expand "image")
         (decompose-equality -4)
         (inst -1 "y!1")
         (iff)
         (prop)
         (("1" (grind)) ("2" (typepred "y!1") (propax))))))))
    ("2"
     (hide 1)
     (inst 1 "inverse[(ipss!1),T](second!1)")
     (("1"
       (prop)
       (("1"
         (apply-extensionality 1 :hide? t)
         (("1"
           (iff)
           (prop)
           (("1"
             (expand "inverse")
             (expand "restrict")
             (expand "image")
             (skosimp*)
             (typepred "x!2")
             (typepred "x!1")
             (typepred "epsilon! (x: ((ipss!1))): second!1(x) = x!2")
             (("1" (replace -5 1 lr) (propax))
              ("2"
               (decompose-equality -6)
               (inst -1 "x!2")
               (iff)
               (prop)
               (skosimp*)
               (typepred "x!3")
               (inst 1 "x!3"))))
            ("2"
             (expand "inverse")
             (expand "restrict")
             (expand "image")
             (inst 1 "second!1(x!1)")
             (("1"
               (hide -2 -3)
               (expand "injective?")
               (inst -3 "x!1"
                "epsilon! (x: ((ipss!1))): second!1(x) = second!1(x!1)")
               (("1"
                 (prop)
                 (lemma "epsilons[(ipss!1)].epsilon_ax")
                 (("1"
                   (inst -1
                    "lambda (q:(ipss!1)):second!1(q)=second!1(x!1)")
                   (prop)
                   (("1" (grind)) ("2" (inst 1 "x!1"))))
                  ("2" (inst 1 "x!1"))))
                ("2" (inst 1 "x!1"))))
              ("2"
               (decompose-equality -4)
               (typepred "x!1")
               (inst -2 "second!1(x!1)")
               (iff)
               (prop)
               (inst 2 "x!1"))))))
          ("2"
           (reveal 2)
           (expand "empty?")
           (expand "member")
           (skosimp*)
           (inst 1 "x!1"))))
        ("2"
         (expand "restrict")
         (expand "inverse")
         (skosimp*)
         (lemma "epsilons[(ipss!1)].epsilon_ax")
         (("1"
           (inst -1 "lambda (q:prewalk):second!1(q)=w!1")
           (prop)
           (("1" (expand "restrict") (propax))
            ("2"
             (expand "restrict")
             (expand "image")
             (decompose-equality -4)
             (inst -1 "w!1")
             (iff)
             (prop)
             (skosimp*)
             (inst 1 "x!1")
             (assert))))
          ("2"
           (reveal 2)
           (expand "empty?")
           (skosimp*)
           (expand "member")
           (inst 1 "x!1"))))))
      ("2"
       (reveal 2)
       (expand "empty?")
       (skosimp*)
       (expand "member")
       (inst 1 "x!1"))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: tcc_change
script:
  (""
   (skosimp*)
   (lemma "ind_path_set_secoo")
   (inst? -1)
   (lemma "sec_image")
   (inst? -1)
   (prop)
   (inst -3 "ipss!1"
    "extend[prewalk,{p:prewalk | length(p)>1},T,s!1](secoo)")
   (prop)
   (("1"
     (expand "image")
     (decompose-equality -2)
     (skosimp*)
     (inst 1 "tau!1")
     (prop)
     (skosimp*)
     (inst -4 "w!1")
     (prop)
     (expand "extend")
     (lemma "long_ipss_paths")
     (inst? -1)
     (inst -1 "tau!1(w!1)")
     (prop)
     (("1" (assert))
      ("2"
       (decompose-equality -4)
       (inst -1 "tau!1(w!1)")
       (iff -1)
       (prop)
       (inst 2 "w!1")
       (expand "restrict")
       (propax))))
    ("2"
     (expand "image")
     (apply-extensionality 1 :hide? t)
     (iff)
     (prop)
     (("1"
       (decompose-equality -2)
       (inst -1 "x!1")
       (iff -1)
       (prop)
       (skosimp*)
       (inst 2 "x!2")
       (("1"
         (expand "extend")
         (typepred "x!2")
         (lemma "long_ipss_paths")
         (inst? -1)
         (inst -1 "x!2")
         (prop)
         (assert))
        ("2"
         (prop)
         (("1"
           (typepred "x!2")
           (lemma "long_ipss_paths")
           (inst? -1)
           (inst -1 "x!2")
           (prop))
          ("2" (typepred "x!2") (expand "restrict") (propax))))))
      ("2"
       (decompose-equality -2)
       (inst -1 "x!1")
       (iff -1)
       (prop)
       (skosimp*)
       (inst 1 "x!2")
       (("1" (expand "extend") (propax))
        ("2" (typepred "x!2") (expand "restrict") (propax))))))
    ("3"
     (expand "injective?")
     (skosimp*)
     (typepred "x1!1")
     (typepred "x2!1")
     (inst -7 "x1!1" "x2!1")
     (expand "extend")
     (lemma "long_ipss_paths")
     (inst? -1)
     (copy -1)
     (inst -1 "x1!1")
     (inst -2 "x2!1")
     (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "ind_path_set_secpp")
   (inst? -1)
   (lemma "sec_image")
   (inst? -1)
   (prop)
   (inst -3 "ipst!1"
    "extend[prewalk,{p:prewalk | length(p)>1},T,s!1](secpp)")
   (prop)
   (("1"
     (expand "image")
     (decompose-equality -2)
     (skosimp*)
     (inst 1 "tau!1")
     (prop)
     (skosimp*)
     (inst -4 "w!1")
     (prop)
     (expand "extend")
     (lemma "long_ipst_paths")
     (inst? -1)
     (inst -1 "tau!1(w!1)")
     (prop)
     (("1" (assert))
      ("2"
       (decompose-equality -4)
       (inst -1 "tau!1(w!1)")
       (iff -1)
       (prop)
       (inst 2 "w!1")
       (expand "restrict")
       (propax))))
    ("2"
     (expand "image")
     (apply-extensionality 1 :hide? t)
     (iff)
     (prop)
     (("1"
       (decompose-equality -2)
       (inst -1 "x!1")
       (iff -1)
       (prop)
       (skosimp*)
       (inst 2 "x!2")
       (("1"
         (expand "extend")
         (typepred "x!2")
         (lemma "long_ipst_paths")
         (inst? -1)
         (inst -1 "x!2")
         (prop)
         (assert))
        ("2"
         (prop)
         (("1"
           (typepred "x!2")
           (lemma "long_ipst_paths")
           (inst? -1)
           (inst -1 "x!2")
           (prop))
          ("2" (typepred "x!2") (expand "restrict") (propax))))))
      ("2"
       (decompose-equality -2)
       (inst -1 "x!1")
       (iff -1)
       (prop)
       (skosimp*)
       (inst 1 "x!2")
       (("1" (expand "extend") (propax))
        ("2" (typepred "x!2") (expand "restrict") (propax))))))
    ("3"
     (expand "injective?")
     (skosimp*)
     (typepred "x1!1")
     (typepred "x2!1")
     (inst -7 "x1!1" "x2!1")
     (expand "extend")
     (lemma "long_ipst_paths")
     (inst? -1)
     (copy -1)
     (inst -1 "x1!1")
     (inst -2 "x2!1")
     (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: update_sec_tcc_1july07
script:
  (""
   (skosimp*)
   (lemma "Map_s")
   (lemma "Map_t")
   (lemma "disjoint_M_paths")
   (inst? -1)
   (inst -1 "ipst!1" "_" "_")
   (inst? -2)
   (inst? -3)
   (prop)
   (skosimp*)
   (inst 1
    "lambda (w:(W!1)):trunc1(tau!2(w)^(0,length(tau!2(w))-2)) o tau!1(w)^(1,length(tau!1(w))-1)")
   (("1"
     (case "injective?[(W!1),prewalk](LAMBDA (w: (W!1)):
                                                                                                                                          trunc1(tau!2(w) ^ (0, length(tau!2(w)) - 2)) o
                                                                                                                                           tau!1(w) ^ (1, length(tau!1(w)) - 1))")
     (("1"
       (prop)
       (("1"
         (lemma "card_injective_image[(W!1),prewalk]")
         (inst -1
          "lambda (w:(W!1)):trunc1(tau!2(w)^(0,length(tau!2(w))-2)) o tau!1(w)^(1,length(tau!1(w))-1)"
          "W!1")
         (("1"
           (expand "restrict")
           (case "W!1 = LAMBDA (s: ((W!1))): TRUE")
           (("1"
             (expand "extend")
             (replace -1 1 lr)
             (hide-all-but (-1 -2 1))
             (replace -2 1 lr)
             (hide -2)
             (lemma "card_eq_bij[(W!1),T]")
             (inst?)
             (("1"
               (prop)
               (hide 2 3)
               (inst 1 "lambda (w:(W!1)):w")
               (grind))
              ("2"
               (lemma "finite_subset")
               (hide 2)
               (replace -2 1 rl)
               (typepred "W!1")
               (propax))
              ("3"
               (hide 2)
               (lemma "finite_subset")
               (inst -1 "W!1" "(LAMBDA (s: ((W!1))): TRUE)")
               (prop)
               (("1"
                 (expand "extend")
                 (lemma "finite_pred[(W!1)]")
                 (inst -1 "LAMBDA (s: ((W!1))): true")
                 (prop)
                 (hide (-1 2))
                 (typepred "W!1")
                 (expand "fullset")
                 (grind))
                ("2"
                 (expand "subset?")
                 (expand "member")
                 (skosimp*)
                 (expand "extend")
                 (prop))))))
            ("2"
             (hide-all-but 1)
             (expand "extend")
             (apply-extensionality 1 :hide? t)
             (iff 1)
             (prop))))
          ("2"
           (lemma "long_ipss_2")
           (lemma "long_ipst_2")
           (inst? -1)
           (inst? -2)
           (expand "image")
           (skosimp*)
           (hide-all-but (-1 -2 -3 -4 -5 -6 -7 -8 1))
           (hide -8)
           (inst -1 "tau!2(w!1)")
           (inst -2 "tau!1(w!1)")
           (reveal (-2 -3 -4 -5 -6 -7 -8 -9 -10))
           (prop)
           (("1"
             (expand* "^" min empty_seq)
             (expand "o")
             (lift-if 1)
             (prop)
             (("1" (assert)) ("2" (assert)) ("3" (assert))))
            ("2"
             (decompose-equality -12)
             (inst -1 "tau!1(w!1)")
             (iff)
             (bddsimp)
             (inst 1 "w!1")
             (expand "restrict")
             (propax))
            ("3"
             (decompose-equality -14)
             (inst -1 "tau!2(w!1)")
             (iff -1)
             (prop)
             (inst 2 "w!1")
             (expand "restrict")
             (propax))
            ("4"
             (decompose-equality -11)
             (inst -1 "tau!1(w!1)")
             (iff)
             (prop)
             (inst 2 "w!1")
             (expand "restrict")
             (propax))))
          ("3" (skosimp*) (typepred "tau!1(w!1)") (assert))
          ("4"
           (hide -6)
           (skosimp*)
           (lemma "long_ipst_2")
           (inst? -1)
           (inst -1 "tau!2(w!1)")
           (prop)
           (("1" (assert) (expand* "^" min empty_seq) (assert))
            ("2" (expand* "^" min empty_seq) (assert))
            ("3"
             (expand "image")
             (decompose-equality -4)
             (inst -1 "tau!2(w!1)")
             (iff)
             (skosimp*)
             (prop)
             (inst 2 "w!1")
             (expand "restrict")
             (propax))
            ("4"
             (expand "image" -4)
             (decompose-equality -4)
             (inst -1 "tau!2(w!1)")
             (iff)
             (prop)
             (inst 2 "w!1")
             (expand "restrict")
             (propax))))
          ("5"
           (lemma "long_ipst_2")
           (hide -7)
           (skosimp*)
           (inst -1 "G!1" "W!1" "ipst!1" "tau!2(w!1)" "s!1" "t!1")
           (expand "image" -5)
           (decompose-equality -5)
           (inst -1 "tau!2(w!1)")
           (iff)
           (prop)
           (("1" (assert))
            ("2" (inst 2 "w!1") (expand "restrict") (propax))
            ("3" (inst 3 "w!1") (expand "restrict") (propax))))))
        ("2"
         (lemma "long_ipss_2")
         (lemma "long_ipst_2")
         (copy -14)
         (copy -16)
         (hide -1 -2)
         (hide -8)
         (inst? -1)
         (inst? -2)
         (expand "st_path_set?")
         (skosimp*)
         (expand "image" -3)
         (skosimp*)
         (inst -2 "tau!1(x!1)")
         (inst -1 "tau!2(x!1)")
         (prop)
         (("1"
           (lemma "path_disjoint[T]")
           (inst -1 "G!1" "_" "_" "s!1" "t!1" "seq(tau!1(x!1))(1)")
           (("1"
             (case "path_from?(G!1,tau!2(x!1)^(0,length(tau!2(x!1))-2),s!1,seq(tau!1(x!1))(1))")
             (("1"
               (case "path_from?(G!1,tau!1(x!1)^(1,length(tau!1(x!1))-1),seq(tau!1(x!1))(1),t!1)")
               (("1"
                 (inst -3 "tau!2(x!1) ^ (0, length(tau!2(x!1)) - 2)"
                  "tau!1(x!1) ^ (1, length(tau!1(x!1)) - 1)")
                 (("1"
                   (replace -6 -3 rl)
                   (prop)
                   (("1"
                     (typepred "x!1")
                     (expand "separates")
                     (prop)
                     (inst -11 "x!1")
                     (prop)
                     (expand "secoo")
                     (expand "finseq_appl")
                     (replace -1 -4 lr)
                     (replace -4 -2 rl)
                     (propax))
                    ("2"
                     (hide -1 -2 -6 -12 -14 -15 -18 -19)
                     (expand "image")
                     (decompose-equality -4)
                     (inst -1 "tau!1(x!1)")
                     (iff)
                     (prop)
                     (("1"
                       (skosimp*)
                       (decompose-equality -7)
                       (inst -1 "tau!2(x!1)")
                       (iff)
                       (prop)
                       (("1"
                         (skosimp*)
                         (inst -12 "tau!1(x!1)")
                         (inst -13 "tau!2(x!1)")
                         (prop)
                         (lemma "Hst_intersect")
                         (lemma "p_Ht")
                         (lemma "q_Hs")
                         (inst? -3)
                         (prop)
                         (inst? -2)
                         (inst? -3)
                         (prop)
                         (("1"
                           (hide-all-but (-1 -2 -3 -10 -11 1))
                           (install-rewrites "walks[T]")
                           (expand "empty?")
                           (skosimp*)
                           (expand "member")
                           (expand "intersection")
                           (expand "member")
                           (prop)
                           (expand "verts_of" (-4 -5))
                           (skosimp*)
                           (expand "^" (-4 -5))
                           (stop-rewrite)
                           (assert)
                           (expand "trunc1")
                           (expand "^" -4)
                           (expand "subset?")
                           (expand "member")
                           (inst -1 "x!4")
                           (inst -2 "x!4")
                           (inst -3 "x!4")
                           (prop)
                           (("1"
                             (expand "verts_of")
                             (typepred "i!1")
                             (inst 2 "i!1")
                             (("1"
                               (hide (-2 1))
                               (install-rewrites "walks[T]")
                               (assert))
                              ("2"
                               (hide (-2 2))
                               (install-rewrites "walks[T]")
                               (assert))))
                            ("2"
                             (hide (-1 1))
                             (expand "verts_of")
                             (typepred "i!2")
                             (inst 1 "i!2-1")
                             (("1"
                               (install-rewrites "walks[T]")
                               (assert))
                              ("2"
                               (install-rewrites "walks[T]")
                               (assert)
                               (case "i!2=0")
                               (("1"
                                 (replace -1 -4 lr)
                                 (assert)
                                 (typepred "x!1")
                                 (reveal -1 -12)
                                 (inst -2 "x!1")
                                 (prop)
                                 (expand "secoo")
                                 (expand "finseq_appl")
                                 (replace -8 -1 lr)
                                 (replace -1 -2 lr)
                                 (expand "Hverts")
                                 (expand "path_verts")
                                 (skosimp*)
                                 (expand "walk_from?")
                                 (prop)
                                 (expand "walk?")
                                 (prop)
                                 (hide -5)
                                 (expand "verts_in?")
                                 (inst -4 "length(w!1)-1")
                                 (replace -3 -4 lr)
                                 (assert))
                                ("2" (assert))))))
                            ("3"
                             (expand "verts_of")
                             (inst 2 "i!1")
                             (("1"
                               (hide 1 3)
                               (install-rewrites "walks[T]")
                               (assert))
                              ("2"
                               (install-rewrites "walks[T]")
                               (typepred "i!1")
                               (assert))))
                            ("4"
                             (expand "verts_of")
                             (hide 1 3)
                             (inst 1 "i!1")
                             (("1"
                               (install-rewrites "walks[T]")
                               (assert))
                              ("2"
                               (typepred "i!1")
                               (assert)
                               (install-rewrites "walks[T]")
                               (assert))))))
                          ("2"
                           (assert)
                           (skosimp*)
                           (reveal -5 -14)
                           (inst -1 "tau!1(x!1)")
                           (prop)
                           (expand "verts_of" -4)
                           (skosimp*)
                           (hide-all-but
                            (-2 -3 -4 -8 -12 -13 -16 -18 -19 1))
                           (typepred "x!1")
                           (expand "ind_prewalk_set?")
                           (inst -3 "tau!1(w!1)" "tau!1(x!1)")
                           (expand "finseq_appl")
                           (prop)
                           (("1"
                             (expand "independent?")
                             (inst -9 "w!1")
                             (prop)
                             (expand "secoo")
                             (expand "finseq_appl")
                             (inst -2 "1" "i!1")
                             (assert)
                             (prop)
                             (("1"
                               (reveal -32)
                               (inst -1 "tau!1(w!1)")
                               (prop)
                               (("1" (assert))
                                ("2"
                                 (skosimp*)
                                 (reveal -37)
                                 (expand "st_path_set?")
                                 (inst -1 "p1!2")
                                 (prop))
                                ("3"
                                 (reveal -20)
                                 (inst -1 "tau!1(w!1)")
                                 (iff)
                                 (prop)
                                 (inst 2 "w!1")
                                 (expand "restrict")
                                 (propax))))
                              ("2"
                               (case "i!1=0")
                               (("1"
                                 (replace -1 -6 lr)
                                 (expand "path_from?")
                                 (prop)
                                 (expand "from?")
                                 (prop)
                                 (expand "separates")
                                 (prop)
                                 (replace -8 -6 lr)
                                 (replace -6 -5 rl)
                                 (propax))
                                ("2" (assert))))
                              ("3"
                               (typepred "i!1")
                               (case "i!1=length(tau!1(x!1))-1")
                               (("1"
                                 (replace -1 -7 lr)
                                 (expand "path_from?")
                                 (prop)
                                 (expand "from?")
                                 (prop)
                                 (replace -7 -10 lr)
                                 (replace -10 -6 lr)
                                 (assert)
                                 (expand "separates")
                                 (propax))
                                ("2"
                                 (expand "separates")
                                 (prop)
                                 (assert))))))
                            ("2"
                             (inst -8 "w!1")
                             (prop)
                             (assert)
                             (reveal -19)
                             (inst -1 "tau!1(w!1)")
                             (iff)
                             (prop)
                             (inst 2 "w!1")
                             (expand "restrict")
                             (propax))
                            ("3"
                             (inst -9 "w!1")
                             (prop)
                             (replace -2 -1 lr)
                             (assert))))
                          ("3"
                           (skosimp*)
                           (expand "verts_of" -3)
                           (skosimp*)
                           (hide-all-but
                            (-1 -2 -3 -4 -8 -11 -15 -16 -17 1))
                           (typepred "x!1")
                           (inst -9 "w!1")
                           (prop)
                           (reveal -24)
                           (reveal -15)
                           (inst -1 "tau!2(w!1)")
                           (iff)
                           (prop)
                           (("1"
                             (expand "ind_prewalk_set?")
                             (inst -3 "tau!2(w!1)" "tau!2(x!1)")
                             (prop)
                             (("1"
                               (expand "independent?")
                               (inst -1 "length(tau!2(w!1))-2" "i!1")
                               (("1"
                                 (assert)
                                 (typepred "i!1")
                                 (prop)
                                 (("1"
                                   (expand "secpp")
                                   (expand "finseq_appl")
                                   (replace -4 -9 rl)
                                   (assert))
                                  ("2"
                                   (reveal -29)
                                   (inst -1 "tau!2(w!1)")
                                   (prop)
                                   (("1" (assert))
                                    ("2" (reveal -15) (propax))))
                                  ("3"
                                   (expand "finseq_appl")
                                   (case "i!1=0")
                                   (("1"
                                     (replace -1 -10 lr)
                                     (reveal -15)
                                     (inst -1 "tau!2(x!1)")
                                     (prop)
                                     (expand "path_from?")
                                     (prop)
                                     (expand "from?")
                                     (prop)
                                     (replace -13 -2 lr)
                                     (expand "separates")
                                     (prop)
                                     (replace -2 -12 lr)
                                     (propax))
                                    ("2" (assert))))
                                  ("4"
                                   (expand "finseq_appl")
                                   (case "i!1=length(tau!2(x!1))-1")
                                   (("1"
                                     (replace -1 -10 lr)
                                     (reveal -15)
                                     (inst -1 "tau!2(x!1)")
                                     (prop)
                                     (expand "path_from?")
                                     (prop)
                                     (expand "from?")
                                     (prop)
                                     (replace -13 -3 lr)
                                     (expand "separates")
                                     (prop)
                                     (replace -3 -12 lr)
                                     (propax))
                                    ("2" (assert))))))
                                ("2"
                                 (expand "finseq_appl")
                                 (reveal -29)
                                 (inst -1 "tau!2(w!1)")
                                 (prop)
                                 (("1" (assert))
                                  ("2" (reveal -15) (propax))))))
                              ("2" (replace -1 -4 lr) (assert))))
                            ("2"
                             (inst 2 "w!1")
                             (expand "restrict")
                             (propax))))
                          ("4"
                           (skosimp*)
                           (hide -5 -8 -10 -14)
                           (hide 3 4)
                           (expand "verts_of")
                           (expand "finseq_appl")
                           (skosimp*)
                           (inst -11 "w!1")
                           (prop)
                           (hide (-4 -5 -6 -8 -10 -12 2))
                           (reveal (-16 -18 -26))
                           (inst -1 "tau!1(w!1)")
                           (inst -2 "tau!1(w!1)")
                           (iff)
                           (prop)
                           (("1"
                             (skosimp*)
                             (hide -4)
                             (reveal -25)
                             (expand "ind_prewalk_set?")
                             (inst -1 "tau!1(w!1)" "tau!1(x!1)")
                             (prop)
                             (("1"
                               (expand "independent?")
                               (expand "secoo")
                               (expand "finseq_appl")
                               (inst -1 "1" "i!1")
                               (assert)
                               (prop)
                               (("1"
                                 (reveal -32)
                                 (inst -1 "tau!1(w!1)")
                                 (prop)
                                 (("1" (assert))
                                  ("2" (reveal -18) (propax))))
                                ("2"
                                 (case "i!1=0")
                                 (("1"
                                   (replace -1 -7 lr)
                                   (expand "path_from?")
                                   (prop)
                                   (expand "from?")
                                   (prop)
                                   (replace -11 -9)
                                   (replace -9 -8 rl)
                                   (expand "separates")
                                   (prop))
                                  ("2" (assert))))
                                ("3"
                                 (case "i!1=length(tau!1(x!1))-1")
                                 (("1"
                                   (replace -1 -7 lr)
                                   (expand "path_from?")
                                   (prop)
                                   (expand "from?")
                                   (prop)
                                   (replace -12 -9 lr)
                                   (replace -9 -8 rl)
                                   (expand "separates")
                                   (prop))
                                  ("2" (assert))))))
                              ("2" (replace -1 -5 lr) (assert))))
                            ("2"
                             (inst 2 "w!1")
                             (expand "restrict")
                             (propax))
                            ("3"
                             (inst 2 "w!1")
                             (expand "restrict")
                             (propax))))))
                        ("2" (inst 2 "x!1"))))
                      ("2" (inst 2 "x!1"))))))
                  ("2" (typepred "tau!1(x!1)") (assert)) ("3" (assert))))
                ("2"
                 (hide-all-but (-3 -8 -11 -13 -16 -18 1))
                 (reveal -6)
                 (expand "image")
                 (decompose-equality -1)
                 (inst -1 "tau!1(x!1)")
                 (iff)
                 (prop)
                 (("1"
                   (inst -7 "tau!1(x!1)")
                   (prop)
                   (lemma "p_Ht")
                   (inst? -1)
                   (prop)
                   (("1"
                     (hide -3 -4 -6 -8 -9)
                     (expand "Hverts")
                     (expand "path_from?")
                     (prop)
                     (("1"
                       (expand "path?")
                       (prop)
                       (("1"
                         (hide -3 -4 -6)
                         (expand "walk?")
                         (prop)
                         (("1"
                           (hide -2 -3)
                           (install-rewrites "graphs")
                           (case "subset?(path_verts(del_verts(G!1,W!1),t!1),vert(G!1))")
                           (("1"
                             (expand "subset?")
                             (expand "member")
                             (expand "verts_in?")
                             (skosimp*)
                             (expand "^")
                             (stop-rewrite)
                             (assert)
                             (inst -2 "tau!1(x!1)(1+i!1)")
                             (prop)
                             (("1"
                               (inst -2 "tau!1(x!1)(1+i!1)")
                               (prop)
                               (expand "finseq_appl")
                               (propax))
                              ("2"
                               (expand "verts_of")
                               (expand "finseq_appl")
                               (case "i!1>0")
                               (("1"
                                 (inst 1 "i!1-1")
                                 (("1" (assert))
                                  ("2"
                                   (typepred "i!1")
                                   (expand* "^" "min")
                                   (assert))))
                                ("2"
                                 (case "i!1=0")
                                 (("1"
                                   (replace -1 3 lr)
                                   (assert)
                                   (typepred "x!1")
                                   (reveal -9 -10)
                                   (inst -1 "x!1")
                                   (prop)
                                   (expand "separates")
                                   (prop)
                                   (expand "secoo")
                                   (expand "finseq_appl")
                                   (replace -1 6 lr)
                                   (reveal -23)
                                   (expand "close?")
                                   (inst -1 "x!1")
                                   (prop)
                                   (skosimp*)
                                   (expand "path_from?")
                                   (prop)
                                   (expand "path?")
                                   (prop)
                                   (expand "walk?")
                                   (expand "finseq_appl")
                                   (prop)
                                   (decompose-equality -5)
                                   (inst -1 "x!1")
                                   (expand "singleton")
                                   (expand "intersection")
                                   (expand "member")
                                   (expand "internal_verts")
                                   (expand "finseq_appl")
                                   (skosimp*)
                                   (expand "verts_in?")
                                   (inst -4 "i!2")
                                   (replace -3 -4 lr)
                                   (propax))
                                  ("2" (assert))))))))
                            ("2"
                             (reveal -4 -5)
                             (hide (-3 2))
                             (expand "path_verts")
                             (expand "subset?")
                             (expand "member")
                             (skosimp*)
                             (expand "walk_from?")
                             (prop)
                             (expand "walk?")
                             (prop)
                             (hide -6)
                             (expand "verts_in?")
                             (inst -5 "length(w!1)-1")
                             (expand "del_verts")
                             (expand "difference")
                             (expand "member")
                             (prop)
                             (replace -4 -5 lr)
                             (propax))))
                          ("2"
                           (expand "finseq_appl")
                           (skosimp*)
                           (expand* "^" "min")
                           (lift-if 1)
                           (assert)
                           (inst -4 "1+n!1")
                           (assert)
                           (hide -2)
                           (expand "Mgraph")
                           (expand "add")
                           (expand "member")
                           (expand "union")
                           (expand "member")
                           (expand "Kgraph")
                           (expand "difference")
                           (expand "member")
                           (expand "edge?")
                           (prop)
                           (("1"
                             (hide -3)
                             (install-rewrites "graphs")
                             (assert)
                             (prop))
                            ("2"
                             (expand "attach_edges")
                             (expand "verts_in?")
                             (skosimp*)
                             (lemma "dbl_eq")
                             (inst -1 "w!1" "seq(tau!1(x!1))(1+n!1)"
                              "seq(tau!1(x!1))(2+n!1)" "s!1")
                             (prop)
                             (("1"
                               (hide -6)
                               (reveal -5 -6 -9 -10)
                               (inst -1 "0" "2+n!1")
                               (expand "finseq_appl")
                               (assert)
                               (expand "from?")
                               (propax))
                              ("2"
                               (reveal -4 -5)
                               (expand "finseq_appl")
                               (inst -1 "0" "1+n!1")
                               (expand "from?")
                               (assert))))))))
                        ("2"
                         (skosimp*)
                         (hide -2)
                         (expand "finseq_appl")
                         (expand "^")
                         (expand "empty_seq")
                         (assert)
                         (inst -3 "1+i!1" "1+j!1")
                         (assert))))
                      ("2"
                       (hide -1 -2)
                       (expand* "^" "min")
                       (lift-if 1)
                       (assert)
                       (expand "from?")
                       (prop))))
                    ("2"
                     (skosimp*)
                     (typepred "x!1")
                     (expand "verts_of")
                     (expand "finseq_appl")
                     (skosimp*)
                     (reveal -3)
                     (inst -1 "tau!1(w!1)")
                     (iff)
                     (prop)
                     (("1"
                       (expand "ind_prewalk_set?")
                       (inst -14 "tau!1(w!1)" "tau!1(x!1)")
                       (prop)
                       (("1"
                         (expand "independent?")
                         (inst -12 "w!1")
                         (prop)
                         (expand "secoo")
                         (expand "finseq_appl")
                         (inst -2 "1" "i!1")
                         (assert)
                         (typepred "i!1")
                         (reveal -23)
                         (inst? -1)
                         (inst -1 "ipss!1" "tau!1(w!1)")
                         (prop)
                         (("1" (assert))
                          ("2"
                           (case "i!1=0")
                           (("1"
                             (replace -1 -10 lr)
                             (expand "path_from?")
                             (prop)
                             (("1"
                               (expand "from?")
                               (prop)
                               (expand "separates")
                               (prop)
                               (replace -12 -10 lr)
                               (replace -10 -9 rl)
                               (propax))
                              ("2"
                               (expand "from?")
                               (expand* "^" "min")
                               (prop))))
                            ("2" (assert))))
                          ("3"
                           (case "i!1=length(tau!1(x!1))-1")
                           (("1"
                             (expand "path_from?")
                             (prop)
                             (("1"
                               (expand "from?")
                               (prop)
                               (replace -1 -10 lr)
                               (replace -13 -10 lr)
                               (expand "separates")
                               (prop)
                               (replace -10 -9 rl)
                               (propax))
                              ("2"
                               (expand* "^" "min")
                               (expand "from?")
                               (prop))))
                            ("2" (assert))))
                          ("4" (assert) (reveal -28) (propax))
                          ("5" (reveal -28) (propax))
                          ("6" (reveal -28) (propax))))
                        ("2"
                         (inst -12 "w!1")
                         (prop)
                         (replace -1 -8 rl)
                         (assert))))
                      ("2"
                       (inst 2 "w!1")
                       (expand "restrict")
                       (propax))))))
                  ("2" (inst 2 "x!1"))))
                ("3" (expand* "^" "min") (assert)) ("4" (assert))))
              ("2"
               (hide -1 -2 -4 -5 -6 -7 -13 -15 -17)
               (hide 2)
               (lemma "q_Hs")
               (inst? -1)
               (inst -1 "tau!2(x!1)")
               (prop)
               (("1"
                 (inst -9 "tau!2(x!1)")
                 (expand "image")
                 (decompose-equality -3)
                 (inst -1 "tau!2(x!1)")
                 (iff)
                 (prop)
                 (("1"
                   (expand "path_from?")
                   (expand "Hverts")
                   (prop)
                   (("1"
                     (expand "path?")
                     (expand "finseq_appl")
                     (prop)
                     (("1"
                       (hide -2 -4 -5)
                       (expand "walk?")
                       (expand "finseq_appl")
                       (prop)
                       (("1"
                         (hide -2 -3)
                         (case "subset?(path_verts(del_verts(G!1,W!1),s!1),vert(G!1))")
                         (("1"
                           (expand "subset?")
                           (expand "member")
                           (expand "verts_in?")
                           (skosimp*)
                           (expand* "^" "min")
                           (assert)
                           (inst -1 "tau!2(x!1)(i!1)")
                           (inst -3 "tau!2(x!1)(i!1)")
                           (expand "finseq_appl")
                           (prop)
                           (expand "verts_of")
                           (expand "finseq_appl")
                           (inst 1 "i!1")
                           (typepred "i!1")
                           (expand* "^" "min")
                           (case "i!1=length(tau!2(x!1))-2")
                           (("1"
                             (replace -1 2 lr)
                             (expand "path_verts")
                             (inst 2 "tau!2(x!1)")
                             (reveal -2 -3 -4)
                             (expand "walk_from?")
                             (prop)
                             (("1" (expand "from?") (prop))
                              ("2"
                               (inst -6 "i!1")
                               (expand "Mgraph")
                               (expand "add")
                               (expand "member")
                               (expand "good?")
                               (prop)
                               (("1" (replace -1 -11 lr) (propax))
                                ("2"
                                 (hide -3 -14 -15)
                                 (expand "Kgraph")
                                 (expand "subgraph")
                                 (propax))))
                              ("3"
                               (expand "walk?")
                               (expand "finseq_appl")
                               (prop)
                               (("1"
                                 (inst -6 "i!1")
                                 (expand "Mgraph")
                                 (expand "add")
                                 (expand "member")
                                 (prop)
                                 (("1"
                                   (expand "good?")
                                   (prop)
                                   (replace -1 -11 lr)
                                   (propax))
                                  ("2"
                                   (expand "verts_in?")
                                   (skosimp*)
                                   (expand "del_verts")
                                   (expand "difference")
                                   (expand "member")
                                   (prop)
                                   (("1"
                                     (typepred "i!2")
                                     (hide -3 -4)
                                     (expand "Kgraph")
                                     (expand "subgraph")
                                     (propax))
                                    ("2"
                                     (assert)
                                     (replace -6 (-2 2) lr)
                                     (hide -3 -4)
                                     (expand "Kgraph")
                                     (expand "subgraph")
                                     (propax))))))
                                ("2"
                                 (skosimp*)
                                 (inst -3 "n!1")
                                 (assert)
                                 (expand "Mgraph")
                                 (expand "union")
                                 (expand "member")
                                 (expand "Kgraph")
                                 (expand "edge?")
                                 (prop)
                                 (("1"
                                   (expand "difference")
                                   (expand "member")
                                   (expand "subgraph")
                                   (prop)
                                   (expand "del_verts")
                                   (prop)
                                   (skosimp*)
                                   (hide -4 -6 -10)
                                   (replace -6 3 lr)
                                   (reveal -3)
                                   (inst -1 "length(tau!2(x!1))-2")
                                   (expand "add")
                                   (expand "member")
                                   (expand "good?")
                                   (prop)
                                   (replace -1 -13 lr)
                                   (propax))
                                  ("2"
                                   (expand "attach_edges")
                                   (skosimp*)
                                   (lemma "dbl_eq")
                                   (inst
                                    -1
                                    "w!1"
                                    "seq(tau!2(x!1))(n!1)"
                                    "seq(tau!2(x!1))(1+n!1)"
                                    "t!1")
                                   (prop)
                                   (("1"
                                     (hide -10)
                                     (reveal -6 -7)
                                     (expand "from?")
                                     (prop)
                                     (inst
                                      -3
                                      "length(tau!2(x!1))-1"
                                      "1+n!1")
                                     (assert)
                                     (prop)
                                     (typepred "n!1")
                                     (reveal -7)
                                     (inst -17 "x!1")
                                     (typepred "x!1")
                                     (prop)
                                     (expand "secpp")
                                     (expand "finseq_appl")
                                     (reveal -10 -12)
                                     (inst -2 "tau!2(x!1)")
                                     (prop)
                                     (expand "path_from?")
                                     (expand "path?")
                                     (prop)
                                     (expand "walk?")
                                     (prop)
                                     (expand "finseq_appl")
                                     (inst -2 "n!1")
                                     (prop)
                                     (expand "Mgraph")
                                     (hide -7 -8 -9 -12 -16)
                                     (hide -2)
                                     (expand "union")
                                     (expand "member")
                                     (expand "Kgraph")
                                     (expand "edge?")
                                     (prop)
                                     (("1"
                                       (expand "difference")
                                       (expand "member")
                                       (expand "subgraph")
                                       (prop)
                                       (expand "del_verts")
                                       (prop)
                                       (skosimp*)
                                       (hide -4 -15)
                                       (reveal -3)
                                       (expand "verts_in?")
                                       (replace -17 3 lr)
                                       (inst -1 "length(tau!2(x!1))-2")
                                       (expand "add")
                                       (expand "member")
                                       (expand "good?")
                                       (prop)
                                       (expand "Kgraph")
                                       (expand "subgraph")
                                       (propax))
                                      ("2"
                                       (expand "attach_edges")
                                       (skosimp*)
                                       (lemma "dbl_eq")
                                       (inst
                                        -1
                                        "w!2"
                                        "seq(tau!2(x!1))(n!1)"
                                        "seq(tau!2(x!1))(1+n!1)"
                                        "t!1")
                                       (prop)
                                       (("1"
                                         (inst
                                          -5
                                          "length(tau!2(x!1))-1"
                                          "1+n!1")
                                         (assert)
                                         (prop)
                                         (typepred "n!1")
                                         (reveal -1)
                                         (expand "verts_in?")
                                         (inst -1 "length(tau!2(x!1))-2")
                                         (expand "add")
                                         (expand "member")
                                         (expand "Kgraph")
                                         (expand "subgraph")
                                         (propax))
                                        ("2"
                                         (reveal -1)
                                         (expand "verts_in?")
                                         (inst -1 "length(tau!2(x!1))-2")
                                         (expand "add")
                                         (expand "member")
                                         (expand "Kgraph")
                                         (expand "subgraph")
                                         (propax))))))
                                    ("2"
                                     (inst -10 "length(tau!2(x!1))-2")
                                     (replace -8 4 lr)
                                     (expand "add")
                                     (expand "member")
                                     (expand "subgraph")
                                     (expand "from?")
                                     (prop)
                                     (expand "good?")
                                     (prop)
                                     (replace -11 -16 lr)
                                     (propax))))))))))
                            ("2" (assert))))
                          ("2"
                           (hide-all-but (-5 -6 -7 1))
                           (expand "subset?")
                           (skosimp*)
                           (expand "member")
                           (expand "path_verts")
                           (skosimp*)
                           (expand "walk_from?")
                           (prop)
                           (expand "walk?")
                           (expand "finseq_appl")
                           (prop)
                           (expand "verts_in?")
                           (inst -3 "length(w!1)-1")
                           (expand "del_verts")
                           (expand "difference")
                           (expand "member")
                           (prop)
                           (replace -2 -3 lr)
                           (propax))))
                        ("2"
                         (skosimp*)
                         (expand* "^" "min")
                         (lift-if 1)
                         (assert)
                         (inst -3 "n!1")
                         (assert)
                         (hide -5)
                         (expand "Mgraph")
                         (expand "add")
                         (expand "member")
                         (expand "union")
                         (expand "member")
                         (expand "Kgraph")
                         (expand "difference")
                         (expand "member")
                         (expand "edge?")
                         (prop)
                         (("1"
                           (hide -3)
                           (install-rewrites "graphs")
                           (assert)
                           (prop))
                          ("2"
                           (expand "attach_edges")
                           (expand "verts_in?")
                           (skosimp*)
                           (lemma "dbl_eq")
                           (inst -1 "w!1" "seq(tau!2(x!1))(n!1)"
                            "seq(tau!2(x!1))(1+n!1)" "t!1")
                           (prop)
                           (("1"
                             (hide -6)
                             (reveal -5 -7)
                             (inst -1 "length(tau!2(x!1))-1" "1+n!1")
                             (assert)
                             (expand "from?")
                             (propax))
                            ("2"
                             (reveal -4)
                             (inst -1 "length(tau!2(x!1))-1" "n!1")
                             (expand "from?")
                             (assert))))))))
                      ("2"
                       (skosimp*)
                       (hide -7)
                       (expand* "^" "min")
                       (assert)
                       (inst -3 "i!1" "j!1")
                       (assert))))
                    ("2"
                     (hide -1 -5)
                     (expand* "^" "min")
                     (lift-if 1)
                     (assert)
                     (expand "from?")
                     (prop)
                     (reveal -12)
                     (typepred "x!1")
                     (inst -3 "x!1")
                     (inst -9 "x!1")
                     (prop)
                     (expand "secoo")
                     (expand "secpp")
                     (expand "finseq_appl")
                     (assert))))
                  ("2"
                   (reveal -1)
                   (inst -1 "tau!2(x!1)")
                   (iff)
                   (prop)
                   (inst 2 "x!1"))
                  ("3" (inst 3 "x!1"))))
                ("2"
                 (expand "image")
                 (decompose-equality -2)
                 (inst -1 "tau!2(x!1)")
                 (iff)
                 (prop)
                 (("1" (inst -9 "tau!2(x!1)") (prop))
                  ("2" (inst 2 "x!1"))))
                ("3"
                 (skosimp*)
                 (typepred "x!1")
                 (expand "verts_of")
                 (expand "finseq_appl")
                 (skosimp*)
                 (expand "image")
                 (decompose-equality -6)
                 (copy -1)
                 (inst -1 "tau!2(w!1)")
                 (inst -2 "tau!2(x!1)")
                 (iff)
                 (prop)
                 (("1"
                   (copy -15)
                   (inst -1 "tau!2(x!1)")
                   (inst -16 "tau!2(w!1)")
                   (prop)
                   (expand "ind_prewalk_set?")
                   (inst -17 "tau!2(w!1)" "tau!2(x!1)")
                   (prop)
                   (("1"
                     (expand "independent?")
                     (inst -13 "w!1")
                     (prop)
                     (expand "secpp")
                     (expand "finseq_appl")
                     (inst -2 "length(tau!2(w!1))-2" "i!1")
                     (("1"
                       (typepred "i!1")
                       (assert)
                       (reveal -19)
                       (inst -1 "tau!2(w!1)")
                       (prop)
                       (("1" (assert))
                        ("2"
                         (case "i!1=0")
                         (("1"
                           (replace -1 -14 lr)
                           (hide 3)
                           (hide -5)
                           (expand "path_from?")
                           (prop)
                           (expand "from?")
                           (prop)
                           (expand "separates")
                           (prop)
                           (replace -6 -15 lr)
                           (replace -15 -14 rl)
                           (propax))
                          ("2" (assert))))
                        ("3"
                         (case "i!1=length(tau!2(x!1))-1")
                         (("1"
                           (replace -1 -14 lr)
                           (hide -5)
                           (expand "path_from?")
                           (prop)
                           (("1"
                             (expand "from?")
                             (prop)
                             (expand "separates")
                             (prop)
                             (replace -15 -7 lr)
                             (replace -7 -14 lr)
                             (propax))
                            ("2"
                             (expand* "^" "min")
                             (expand "from?")
                             (prop)
                             (reveal -3 -14)
                             (inst -1 "x!1")
                             (inst -2 "x!1")
                             (assert)
                             (expand "secpp")
                             (expand "secoo")
                             (expand "finseq_appl")
                             (assert))))
                          ("2" (assert))))
                        ("4"
                         (reveal -21)
                         (inst -1 "G!1" "W!1" "ipst!1" "tau!2(w!1)" "s!1"
                          "t!1")
                         (reveal -23)
                         (prop)
                         (assert))
                        ("5" (reveal -15) (propax))
                        ("6" (reveal -15) (propax))
                        ("7"
                         (reveal -18)
                         (inst -1 "tau!2(w!1)")
                         (prop)
                         (("1" (assert)) ("2" (reveal -4) (propax))))
                        ("8"
                         (case "i!1=0")
                         (("1"
                           (replace -1 -13 lr)
                           (expand "path_from?")
                           (prop)
                           (("1"
                             (expand "from?")
                             (prop)
                             (replace -17 -8 lr)
                             (expand "separates")
                             (prop)
                             (replace -8 -16 lr)
                             (propax))
                            ("2"
                             (expand* "^" "min")
                             (expand "from?")
                             (prop)
                             (reveal -2 -13)
                             (inst -1 "x!1")
                             (inst -2 "x!1")
                             (prop)
                             (expand "secoo")
                             (expand "secpp")
                             (expand "finseq_appl")
                             (assert))))
                          ("2" (assert))))
                        ("9"
                         (case "i!1=length(tau!2(x!1))-1")
                         (("1"
                           (replace -1 -13 lr)
                           (hide -4)
                           (expand "path_from?")
                           (prop)
                           (("1"
                             (expand "from?")
                             (prop)
                             (expand "separates")
                             (prop)
                             (replace -6 -14 lr)
                             (replace -14 -13 rl)
                             (propax))
                            ("2"
                             (expand* "^" "min")
                             (expand "from?")
                             (prop)
                             (reveal -3 -14)
                             (inst -1 "x!1")
                             (inst -2 "x!1")
                             (prop)
                             (assert)
                             (expand "secpp")
                             (expand "secoo")
                             (expand "finseq_appl")
                             (assert))))
                          ("2" (assert))))))
                      ("2"
                       (reveal -18)
                       (inst -1 "tau!2(w!1)")
                       (prop)
                       (("1" (assert)) ("2" (reveal -4) (propax))))))
                    ("2"
                     (inst -13 "w!1")
                     (prop)
                     (replace -2 -1 lr)
                     (assert))))
                  ("2" (inst 2 "x!1"))
                  ("3" (inst 2 "w!1") (expand "restrict") (propax))
                  ("4" (inst 2 "x!1"))))))
              ("3" (assert)) ("4" (assert))))
            ("2" (assert))))
          ("2"
           (expand "image")
           (decompose-equality -4)
           (inst -1 "tau!1(x!1)")
           (iff)
           (prop)
           (inst 2 "x!1"))
          ("3"
           (expand "image")
           (decompose-equality -6)
           (inst -1 "tau!2(x!1)")
           (iff)
           (prop)
           (inst 2 "x!1"))
          ("4"
           (expand "image")
           (decompose-equality -3)
           (inst -1 "tau!1(x!1)")
           (iff)
           (prop)
           (inst 2 "x!1"))))
        ("3"
         (expand "ind_prewalk_set?" 1)
         (skosimp*)
         (expand "image")
         (hide -8)
         (skosimp*)
         (case "x!1=x!2")
         (("1" (replace -1 -2 lr) (replace -2 -3 rl) (assert))
          ("2"
           (hide -11 -12)
           (decompose-equality -4)
           (copy -1)
           (inst -1 "tau!1(x!1)")
           (inst -2 "tau!1(x!2)")
           (decompose-equality -7)
           (copy -1)
           (inst -1 "tau!2(x!1)")
           (inst -2 "tau!2(x!2)")
           (iff)
           (prop)
           (("1"
             (hide -1 -3 -5 -7)
             (expand "st_path_set?")
             (copy -13)
             (copy -15)
             (inst -1 "tau!2(x!1)")
             (inst -16 "tau!2(x!2)")
             (inst -15 "tau!1(x!2)")
             (inst -2 "tau!1(x!1)")
             (prop)
             (hide -1 -2 -3 -4)
             (lemma "long_ipss_2")
             (lemma "long_ipst_2")
             (inst? -1)
             (inst? -2)
             (inst -1 "ipst!1" "_")
             (inst -2 "ipss!1" "_")
             (copy -1)
             (inst -1 "tau!2(x!1)")
             (inst -2 "tau!2(x!2)")
             (copy -3)
             (inst -1 "tau!1(x!1)")
             (inst -4 "tau!1(x!2)")
             (case " st_path_set?(Mgraph(G!1, W!1, s!1), s!1, t!1, ipss!1)")
             (("1"
               (case " st_path_set?(Mgraph(G!1, W!1, t!1), s!1, t!1, ipst!1)")
               (("1"
                 (prop)
                 (expand "independent?")
                 (skosimp*)
                 (case "i!1<length(tau!2(x!1))-2")
                 (("1"
                   (case "j!1<length(tau!2(x!2))-2")
                   (("1"
                     (replace -13 -19 lr)
                     (replace -14 -19 lr)
                     (hide -7 -8 -20)
                     (hide -11 -12)
                     (expand "^")
                     (expand "trunc1")
                     (expand "o")
                     (expand* "^" "min")
                     (lift-if -15)
                     (assert)
                     (expand "ind_prewalk_set?" -22)
                     (inst -22 "tau!2(x!1)" "tau!2(x!2)")
                     (prop)
                     (("1"
                       (expand "independent?")
                       (inst -1 "i!1" "j!1")
                       (assert))
                      ("2"
                       (copy -18)
                       (inst -1 "x!1")
                       (inst -19 "x!2")
                       (prop)
                       (("1"
                         (replace -3 -2 lr)
                         (replace -2 -1 lr)
                         (propax))
                        ("2" (typepred "x!2") (propax))
                        ("3" (typepred "x!1") (propax))
                        ("4" (typepred "x!1") (propax))))))
                    ("2"
                     (hide -19)
                     (replace -12 -18 lr)
                     (replace -13 -18 lr)
                     (hide -12 -13)
                     (install-rewrites "walks")
                     (expand* "^" "min")
                     (expand "o")
                     (expand "trunc1")
                     (expand* "^" "min")
                     (lift-if -16)
                     (stop-rewrite)
                     (assert)
                     (reveal -24)
                     (inst -1 "tau!1(x!2)" "tau!2(x!1)")
                     (prop)
                     (("1"
                       (inst -20 "x!2")
                       (inst -21 "x!1")
                       (typepred "x!1")
                       (typepred "x!2")
                       (prop)
                       (replace -1 -7 lr)
                       (replace -2 -7 lr)
                       (assert))
                      ("2"
                       (hide -7 -8)
                       (expand "empty?")
                       (expand "member")
                       (expand "intersection")
                       (expand "member")
                       (inst -1 "seq(tau!2(x!1))(i!1)")
                       (expand* "^" "min")
                       (expand "verts_of")
                       (expand "finseq_appl")
                       (prop)
                       (("1"
                         (inst 1 "2-length(tau!2(x!2))+j!1")
                         (("1" (assert))
                          ("2"
                           (assert)
                           (reveal -5)
                           (replace -1 -14 lr)
                           (hide-all-but
                            (-2 -3 -4 -5 -6 -11 -12 -13 -14 -15 1 2 3 4))
                           (install-rewrites "walks")
                           (assert))))
                        ("2" (inst 1 "i!1"))))
                      ("3" (reveal -22 -23) (propax))
                      ("4" (reveal -22 -23) (propax))))))
                  ("2"
                   (case "j!1<length(tau!2(x!2))-2")
                   (("1"
                     (hide -19)
                     (replace -12 -18 lr)
                     (replace -13 -18 lr)
                     (hide -12 -13)
                     (expand* "^" "min")
                     (expand "o")
                     (expand "empty_seq")
                     (expand "trunc1")
                     (expand* "^" "min")
                     (expand "empty_seq")
                     (lift-if -16)
                     (assert)
                     (reveal -24)
                     (inst -1 "tau!1(x!1)" "tau!2(x!2)")
                     (prop)
                     (("1"
                       (inst -20 "x!1")
                       (inst -21 "x!2")
                       (typepred "x!1")
                       (typepred "x!2")
                       (prop)
                       (replace -2 -7 lr)
                       (replace -1 -7 lr)
                       (propax))
                      ("2"
                       (expand "empty?")
                       (expand "member")
                       (expand "intersection")
                       (expand "member")
                       (inst -1 "seq(tau!2(x!2))(j!1)")
                       (expand "verts_of")
                       (prop)
                       (("1"
                         (expand "^")
                         (inst 1 "2-length(tau!2(x!1))+i!1")
                         (("1" (assert) (expand "finseq_appl") (propax))
                          ("2"
                           (expand* "^" "min")
                           (reveal -2)
                           (replace -1 -14 lr)
                           (expand* "^" "min")
                           (expand "trunc1")
                           (expand* "^" "min")
                           (expand "o")
                           (assert))))
                        ("2"
                         (inst 1 "j!1")
                         (("1"
                           (expand "^")
                           (reveal -3)
                           (replace -1 -16 lr)
                           (expand* "^" "min")
                           (expand "o")
                           (expand "trunc1")
                           (hide -1)
                           (expand* "^" "min")
                           (expand "finseq_appl")
                           (propax))
                          ("2" (expand* "^" "min") (assert))))))
                      ("3" (reveal -22 -23) (propax))
                      ("4" (reveal -22 -23) (propax))))
                    ("2"
                     (replace -11 -17 lr)
                     (replace -12 -17 lr)
                     (hide -11 -12 -18)
                     (expand* "^" "min")
                     (expand "o")
                     (expand "empty_seq")
                     (expand "trunc1")
                     (expand* "^" "min")
                     (lift-if -15)
                     (assert)
                     (hide -5 -6)
                     (hide -20)
                     (expand "ind_prewalk_set?")
                     (inst -19 "tau!1(x!1)" "tau!1(x!2)")
                     (prop)
                     (("1"
                       (expand "independent?")
                       (inst -1 "3-length(tau!2(x!1))+i!1"
                        "3-length(tau!2(x!2))+j!1")
                       (reveal -6 -7)
                       (replace -1 -13 lr)
                       (replace -2 -15 lr)
                       (hide -1 -2)
                       (expand* "^" "min")
                       (expand "o")
                       (expand "trunc1")
                       (expand* "^" "min")
                       (assert))
                      ("2"
                       (typepred "x!2")
                       (typepred "x!1")
                       (copy -19)
                       (inst -1 "x!1")
                       (inst -20 "x!2")
                       (prop)
                       (replace -7 -2 lr)
                       (replace -2 -1 lr)
                       (propax))))))))
                ("2" (reveal -12) (expand "st_path_set?" 1) (propax))))
              ("2" (reveal -11) (expand "st_path_set?" 1) (propax))))
            ("2" (inst 2 "x!2")) ("3" (inst 2 "x!1"))
            ("4" (inst 2 "x!2")) ("5" (inst 2 "x!2"))
            ("6" (inst 2 "x!2")) ("7" (inst 2 "x!1"))
            ("8" (inst 2 "x!2")) ("9" (inst 2 "x!1"))
            ("10" (inst 2 "x!2")) ("11" (inst 2 "x!1"))
            ("12" (inst 2 "x!2")) ("13" (inst 2 "x!2"))
            ("14" (inst 2 "x!2")) ("15" (inst 2 "x!1"))
            ("16" (inst 2 "x!2"))))))))
      ("2"
       (hide (-5 2))
       (expand "injective?")
       (skosimp*)
       (typepred "x1!1")
       (typepred "x2!1")
       (case "verts_of( trunc1(tau!2(x1!1) ^ (0, length(tau!2(x1!1)) - 2)) o
                                          tau!1(x1!1) ^ (1, length(tau!1(x1!1)) - 1))(x1!1)")
       (("1"
         (replace -4 -1 lr)
         (hide -4 -5 -7 -16 -17)
         (expand* "^" min empty_seq)
         (expand "trunc1")
         (expand "o")
         (expand* "^" min empty_seq)
         (expand "verts_of")
         (expand "finseq_appl")
         (skosimp*)
         (hide -1)
         (lemma "long_ipss_2")
         (lemma "long_ipst_2")
         (reveal -3 -4)
         (expand "image")
         (decompose-equality -1)
         (decompose-equality -2)
         (inst -1 "tau!2(x2!1)")
         (inst -2 "tau!1(x2!1)")
         (iff)
         (prop)
         (("1"
           (hide -1 -3)
           (inst? -3)
           (inst? -4)
           (inst -4 "tau!1(x2!1)")
           (inst -3 "tau!2(x2!1)")
           (prop)
           (reveal -9)
           (lift-if -1)
           (assert)
           (lift-if -1)
           (prop)
           (("1"
             (lemma "uniq_w_ipst")
             (inst? -1)
             (inst -1 "tau!2(x2!1)" "x1!1")
             (prop)
             (("1" (inst -11 "x2!1") (prop) (replace -1 -2 lr) (propax))
              ("2" (reveal -16) (propax))
              ("3"
               (expand "verts_of")
               (expand "finseq_appl")
               (inst 1 "i!1"))))
            ("2"
             (typepred "i!1")
             (lift-if -1)
             (assert)
             (lemma "uniq_w_ipss")
             (inst? -1)
             (inst -1 "tau!1(x2!1)" "x1!1")
             (prop)
             (("1" (inst -10 "x2!1") (prop) (replace -1 -2 lr) (propax))
              ("2" (reveal -15) (propax))
              ("3"
               (expand "verts_of")
               (inst 1 "3 - length(tau!2(x2!1)) + i!1")
               (expand "finseq_appl")
               (propax))))))
          ("2" (inst 2 "x2!1") (expand "restrict") (propax))
          ("3" (inst 2 "x2!1") (expand "restrict") (propax))
          ("4" (inst 2 "x2!1") (expand "restrict") (propax))))
        ("2"
         (expand "verts_of")
         (expand "finseq_appl")
         (inst 1 "length(tau!2(x1!1))-2")
         (("1"
           (inst -7 "x1!1")
           (prop)
           (expand "secpp")
           (expand "finseq_appl")
           (hide (-4 -5 -6 -7 -8 -10 -13 -14 -15 -15))
           (install-rewrites "walks")
           (expand* "^" min empty_seq)
           (expand "o")
           (expand "trunc1")
           (expand* "^" min empty_seq)
           (lift-if 1)
           (lift-if 1)
           (assert)
           (reveal -2 -3 -7 -9)
           (lemma "long_ipss_2")
           (lemma "long_ipst_2")
           (inst? -1)
           (inst? -2)
           (reveal -4)
           (expand "image")
           (hide -11)
           (stop-rewrite)
           (decompose-equality -1)
           (decompose-equality -4)
           (inst -1 "tau!1(x1!1)")
           (iff)
           (bddsimp -1)
           (("1"
             (reveal -8)
             (expand "image")
             (decompose-equality -1)
             (inst -1 "tau!2(x1!1)")
             (iff)
             (bddsimp -1)
             (("1"
               (hide -1 -3)
               (delete -4)
               (inst -4 "tau!1(x1!1)")
               (lemma "long_ipst_2")
               (inst -1 "G!1" "W!1" "ipst!1" "tau!2(x1!1)" "s!1" "t!1")
               (hide -4)
               (reveal -13 -14 -15 -16)
               (prop)
               (("1" (assert)) ("2" (assert))
                ("3"
                 (case-old-lift-if 2)
                 (("1" (assert))
                  ("2"
                   (assert)
                   (inst -9 "x1!1")
                   (typepred "x1!1")
                   (prop)
                   (expand "secoo")
                   (expand "finseq_appl")
                   (propax))))))
              ("2" (inst 1 "x1!1") (expand "restrict") (propax))))
            ("2" (inst 1 "x1!1") (expand "restrict") (propax))))
          ("2"
           (hide -3)
           (install-rewrites "walks")
           (prop)
           (("1"
             (hide -3 -10 -12 -14)
             (expand "image")
             (decompose-equality -4)
             (stop-rewrite)
             (inst -1 "tau!2(x1!1)")
             (iff)
             (prop)
             (("1"
               (lemma "long_ipst_2")
               (inst -1 "G!1" "W!1" "ipst!1" "tau!2(x1!1)" "s!1" "t!1")
               (prop)
               (assert))
              ("2" (inst 2 "x1!1") (expand "restrict") (propax))))
            ("2"
             (expand "o")
             (expand* "^" min empty_seq)
             (expand "trunc1")
             (lift-if 1)
             (hide -3 -10 -12 -14)
             (expand "image")
             (stop-rewrite)
             (decompose-equality -4)
             (inst -1 "tau!2(x1!1)")
             (iff -1)
             (prop)
             (("1" (assert) (lift-if 1) (assert)) ("2" (assert))
              ("3"
               (expand* "^" "min" "empty_seq")
               (reveal -2 -4)
               (expand "image")
               (decompose-equality -1)
               (inst -1 "tau!1(x1!1)")
               (iff -1)
               (prop)
               (("1"
                 (lemma "long_ipss_2")
                 (inst? -1)
                 (inst -1 "tau!1(x1!1)")
                 (prop)
                 (assert)
                 (case-old-lift-if 3)
                 (("1" (assert)) ("2" (case-old-lift-if 4) (assert))))
                ("2"
                 (assert)
                 (case-old-lift-if 5)
                 (("1"
                   (assert)
                   (case-old-lift-if 5)
                   (("1" (inst 2 "x1!1") (expand "restrict") (propax))
                    ("2" (prop) (assert))))
                  ("2"
                   (assert)
                   (case "1 > length(tau!1(x1!1)) - 1")
                   (("1"
                     (assert)
                     (inst 3 "x1!1")
                     (expand "restrict")
                     (propax))
                    ("2"
                     (inst 4 "x1!1")
                     (expand "restrict")
                     (propax))))))))
              ("4" (assert) (lift-if 1) (assert)) ("5" (assert))
              ("6" (inst 5 "x1!1") (expand "restrict") (propax))))))))
        ("3" (assert))
        ("4"
         (hide -3)
         (expand "image")
         (decompose-equality -5)
         (inst -1 "tau!2(x1!1)")
         (iff -1)
         (prop)
         (("1"
           (hide -5)
           (lemma "long_ipst_2")
           (inst -1 "G!1" "W!1" "ipst!1" "tau!2(x1!1)" "s!1" "t!1")
           (prop)
           (assert))
          ("2" (inst 2 "x1!1") (expand "restrict") (propax))))))
      ("3"
       (hide 2)
       (hide -5)
       (skosimp*)
       (expand "o")
       (expand* "^" min empty_seq)
       (expand "trunc1")
       (expand* "^" min empty_seq)
       (lift-if 1)
       (expand "image")
       (decompose-equality -1)
       (decompose-equality -3)
       (inst -1 "tau!2(w!1)")
       (inst -2 "tau!1(w!1)")
       (iff -1 -2)
       (bddsimp (-1 -2))
       (("1"
         (hide -1 -3)
         (lemma "long_ipst_2")
         (lemma "long_ipss_2")
         (inst -2 "G!1" "W!1" "ipst!1" "tau!2(w!1)" "s!1" "t!1")
         (inst -1 "G!1" "W!1" "ipss!1" "tau!1(w!1)" "s!1" "t!1")
         (bddsimp -)
         (assert))
        ("2" (inst 1 "w!1") (expand "restrict") (propax))
        ("3" (inst 1 "w!1") (expand "restrict") (propax))
        ("4" (inst 1 "w!1") (expand "restrict") (propax))))
      ("4"
       (hide (-5 2))
       (skosimp*)
       (expand "image")
       (decompose-equality -1)
       (inst -1 "tau!1(w!1)")
       (iff -1)
       (prop)
       (("1"
         (lemma "long_ipss_2")
         (inst -1 "G!1" "W!1" "ipss!1" "tau!1(w!1)" "s!1" "t!1")
         (prop)
         (assert))
        ("2" (inst 2 "w!1") (expand "restrict") (propax))))
      ("5"
       (hide -5 2)
       (skosimp*)
       (expand* "^" min empty_seq)
       (lift-if 1)
       (assert)
       (hide -1 -2 -8 -9 -10 -12)
       (expand "image")
       (decompose-equality -1)
       (inst -1 "tau!2(w!1)")
       (iff -1)
       (prop)
       (("1"
         (lemma "long_ipst_2")
         (inst -1 "G!1" "W!1" "ipst!1" "tau!2(w!1)" "s!1" "t!1")
         (prop)
         (assert))
        ("2" (assert))
        ("3"
         (lemma "long_ipst_2")
         (inst -1 "G!1" "W!1" "ipst!1" "tau!2(w!1)" "s!1" "t!1")
         (prop)
         (assert))
        ("4" (inst 2 "w!1") (expand "restrict") (propax))
        ("5" (inst 2 "w!1") (expand "restrict") (propax))
        ("6" (inst 5 "w!1") (expand "restrict") (propax))))
      ("6"
       (hide -5 2)
       (hide -1 -2 -8 -9 -10 -12)
       (skosimp*)
       (expand "image")
       (decompose-equality -1)
       (inst -1 "tau!2(w!1)")
       (iff -1)
       (prop)
       (("1"
         (lemma "long_ipst_2")
         (inst -1 "G!1" "W!1" "ipst!1" "tau!2(w!1)" "s!1" "t!1")
         (prop)
         (assert))
        ("2" (inst 2 "w!1") (expand "restrict") (propax))))))
    ("2"
     (expand "o")
     (expand "trunc1")
     (expand* "^" min empty_seq)
     (skosimp*)
     (lift-if 1)
     (hide -5)
     (expand "image")
     (hide 1)
     (decompose-equality -1)
     (decompose-equality -3)
     (inst -1 "tau!2(w!1)")
     (inst -2 "tau!1(w!1)")
     (iff -1 -2)
     (prop)
     (("1"
       (lemma "long_ipst_2")
       (lemma "long_ipss_2")
       (inst -2 "G!1" "W!1" "ipst!1" "tau!2(w!1)" "s!1" "t!1")
       (inst -1 "G!1" "W!1" "ipss!1" "tau!1(w!1)" "s!1" "t!1")
       (prop)
       (reveal 1)
       (assert))
      ("2" (inst 2 "w!1") (expand "restrict") (propax))
      ("3" (inst 2 "w!1") (expand "restrict") (propax))
      ("4" (inst 2 "w!1") (expand "restrict") (propax))))
    ("3"
     (hide -3 -4 -5 -10 -12 -14)
     (skosimp*)
     (expand "image")
     (decompose-equality -1)
     (inst -1 "tau!1(w!1)")
     (iff -1)
     (prop)
     (("1"
       (lemma "long_ipss_2")
       (inst? -1)
       (inst -1 "tau!1(w!1)")
       (assert))
      ("2" (inst 2 "w!1") (expand "restrict") (propax))))
    ("4"
     (hide -5)
     (skosimp*)
     (hide -1 -2 -8 -10 -12)
     (expand "image")
     (decompose-equality -1)
     (inst -1 "tau!2(w!1)")
     (iff -1)
     (prop)
     (("1"
       (lemma "long_ipst_2")
       (inst? -1)
       (inst -1 "tau!2(w!1)")
       (prop)
       (expand* "^" min empty_seq)
       (lift-if 1)
       (assert))
      ("2"
       (expand* "^" min empty_seq)
       (lemma "long_ipst_2")
       (inst? -1)
       (inst -1 "tau!2(w!1)")
       (prop)
       (assert))
      ("3" (inst 3 "w!1") (expand "restrict") (propax))
      ("4" (inst 3 "w!1") (expand "restrict") (propax))))
    ("5"
     (hide -1 -2 -5 -9 -11 -13)
     (skosimp*)
     (expand "image")
     (decompose-equality -1)
     (inst -1 "tau!2(w!1)")
     (iff -1)
     (prop)
     (("1"
       (lemma "long_ipst_2")
       (inst? -1)
       (inst -1 "tau!2(w!1)")
       (prop)
       (assert))
      ("2" (inst 2 "w!1") (expand "restrict") (propax))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "k_sep_close")
   (inst? -1)
   (inst -1 "W!1")
   (prop)
   (copy -6)
   (inst -1 "Mgraph(G!1,W!1,t!1)")
   (inst -7 "Mgraph(G!1,W!1,s!1)")
   (lemma "size_Ws")
   (inst? -1)
   (lemma "size_Wt")
   (inst? -1)
   (prop)
   (expand "C")
   (inst -1 "k!1")
   (inst -2 "k!1")
   (lemma "separates_Ws")
   (lemma "separates_Wt")
   (inst? -1)
   (inst? -2)
   (inst -1 "W!1")
   (inst -2 "W!1")
   (prop)
   (expand "B_many")
   (prop)
   (expand "many_ind")
   (skosimp*)
   (lemma "Mapper_ips")
   (inst -1 "G!1" "W!1" "ips!2" "ips!1" "s!1" "t!1")
   (prop)
   (("1"
     (skosimp*)
     (inst 1 "image(phi!1, restrict[T, (W!1), boolean](W!1))")
     (bddsimp)
     (replace -18 -1 lr)
     (propax))
    ("2" (replace -15 -6 rl) (assert))
    ("3" (replace -15 -3 rl) (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "separates")
   (prop)
   (("1" (expand "add") (expand "member") (prop))
    ("2" (expand "add") (expand "member") (prop))
    ("3"
     (skosimp*)
     (case "del_verts(G!1, add(a!1, W!1))=del_verts(del_vert(G!1, a!1), W!1)")
     (("1" (replace -1 -2 lr) (inst 3 "w!1"))
      ("2"
       (hide -1 4)
       (expand "good?")
       (expand "separable?")
       (prop)
       (install-rewrites "graph_ops")
       (assert)
       (expand "difference")
       (expand "member")
       (prop)
       (("1" (apply-extensionality 1 :hide? t) (iff 1) (prop))
        ("2"
         (apply-extensionality 1 :hide? t)
         (iff 1)
         (prop)
         (("1" (inst -3 "a!1")) ("2" (skosimp*) (inst -4 "v!1") (prop))
          ("3"
           (skosimp*)
           (prop)
           (("1" (replace -1 -2 rl) (propax))
            ("2" (inst -4 "v!1") (prop))))))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "separates")
   (prop)
   (("1" (expand "remove") (expand "member") (prop))
    ("2" (expand "remove") (expand "member") (prop))
    ("3"
     (skosimp*)
     (inst 3 "w!1")
     (install-rewrites "walks")
     (assert)
     (prop)
     (("1"
       (skosimp*)
       (prop)
       (("1" (inst -3 "i!1") (prop))
        ("2" (inst -4 "i!1") (prop) (replace -1 -5 rl) (propax))))
      ("2"
       (skosimp*)
       (prop)
       (("1" (inst -6 "n!1") (prop)) ("2" (inst -5 "n!1") (prop))
        ("3"
         (skosimp*)
         (prop)
         (("1"
           (inst -6 "n!1")
           (prop)
           (("1" (replace -1 -7 rl) (propax))
            ("2" (replace -1 -2 lr) (propax))))
          ("2"
           (inst -6 "1+n!1")
           (prop)
           (("1" (replace -1 -7 rl) (propax))
            ("2" (replace -1 -2 lr) (propax))))))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (inst 1 "add[prewalk](q!1,ips!1)")
   (prop)
   (("1"
     (lemma "card_add[prewalk]")
     (inst? -1)
     (lift-if -1)
     (prop)
     (hide -2 -6 1)
     (expand "good?")
     (expand "separable?")
     (prop)
     (expand "st_path_set?")
     (inst -5 "q!1")
     (prop)
     (expand "path_from?")
     (prop)
     (expand "from?")
     (prop)
     (expand "path?")
     (expand "finseq_appl")
     (prop)
     (hide -2)
     (expand "walk?")
     (expand "finseq_appl")
     (prop)
     (hide -2)
     (expand "verts_in?")
     (inst -1 "1")
     (("1"
       (expand "del_verts")
       (expand* "^" min empty_seq)
       (expand "difference")
       (expand "member")
       (prop)
       (("1"
         (typepred "q!1")
         (case "length(q!1)=1")
         (("1" (replace -1 -6 lr) (assert))
          ("2"
           (case "length(q!1)=2")
           (("1" (inst -11 "0") (assert)) ("2" (assert))))))
        ("2" (expand "verts_of") (assert)) ("3" (assert) (grind))))
      ("2"
       (typepred "q!1")
       (case "length(q!1)=1")
       (("1" (replace -1 -4 lr) (assert)) ("2" (assert))))))
    ("2"
     (expand "st_path_set?")
     (skosimp*)
     (expand "add")
     (expand "member")
     (prop)
     (("1" (replace -1 -3 lr) (propax))
      ("2"
       (lemma "subgraph_paths")
       (inst? -1)
       (inst -1 "del_verts(G!1, verts_of(q!1 ^ (1, length(q!1) - 2)))")
       (("1"
         (inst -5 "p1!1")
         (prop)
         (hide-all-but (-3 1))
         (install-rewrites "graphs")
         (expand "subgraph?")
         (prop)
         (("1"
           (expand "del_verts")
           (expand* "^" min empty_seq)
           (expand "difference")
           (expand "member")
           (expand "subset?")
           (expand "member")
           (skosimp*))
          ("2"
           (expand "subset?")
           (expand "member")
           (skosimp*)
           (expand "del_verts")
           (prop))))
        ("2"
         (hide -4)
         (expand "good?")
         (expand "separable?")
         (prop)
         (expand* "^" min empty_seq)
         (lift-if 1)
         (prop)
         (("1"
           (typepred "q!1")
           (case "length(q!1)=1")
           (("1"
             (expand "path_from?")
             (prop)
             (("1" (expand "from?") (prop) (replace -1 -9 lr) (assert))
              ("2"
               (reveal -1)
               (inst -1 "p1!1")
               (prop)
               (expand "path_from?")
               (prop))))
            ("2"
             (case "length(q!1)=2")
             (("1"
               (expand "path_from?")
               (prop)
               (("1"
                 (expand "path?")
                 (prop)
                 (("1"
                   (expand "walk?")
                   (expand "finseq_appl")
                   (prop)
                   (("1"
                     (inst -8 "0")
                     (assert)
                     (expand "from?")
                     (prop)
                     (replace -1 -11 lr)
                     (assert))
                    ("2"
                     (reveal -1)
                     (inst -1 "p1!1")
                     (prop)
                     (expand "path_from?")
                     (prop)
                     (expand "path?")
                     (prop)
                     (expand "walk?")
                     (expand "finseq_appl")
                     (prop)
                     (skosimp*)
                     (inst -2 "n!1")
                     (typepred "n!1")
                     (prop)
                     (hide -4 -14 -15)
                     (install-rewrites "walks")
                     (assert)
                     (prop))))
                  ("2"
                   (reveal -1)
                   (inst -1 "p1!1")
                   (prop)
                   (expand "path_from?")
                   (prop)
                   (expand "path?")
                   (prop))))
                ("2"
                 (reveal -1)
                 (inst -1 "p1!1")
                 (prop)
                 (expand "path_from?")
                 (prop))))
              ("2" (assert))))))
          ("2" (grind)) ("3" (assert))))
        ("3"
         (typepred "q!1")
         (case "length(q!1)=1")
         (("1"
           (expand "good?")
           (expand "separable?")
           (prop)
           (expand "path_from?")
           (prop)
           (("1" (expand "from?") (prop) (replace -1 -8 lr) (assert))
            ("2" (inst -8 "p1!1") (prop))))
          ("2" (assert))))))))
    ("3"
     (expand "ind_prewalk_set?")
     (skosimp*)
     (expand "add")
     (expand "member")
     (prop)
     (("1" (replace -2 -1 lr) (propax))
      ("2"
       (hide -6)
       (expand "st_path_set?")
       (inst -5 "p2!1")
       (prop)
       (expand "independent?")
       (skosimp*)
       (install-rewrites "paths")
       (replace -3 -8 rl)
       (hide -2 -10)
       (expand "path_from?")
       (prop)
       (expand "path?")
       (prop)
       (hide -2)
       (expand "walk?")
       (prop)
       (hide -2)
       (assert)
       (prop)
       (inst -1 "j!1")
       (prop)
       (inst 2 "i!1-1")
       (assert))
      ("3"
       (hide -6)
       (expand "independent?")
       (skosimp*)
       (replace -1 -7 rl)
       (expand "st_path_set?")
       (inst -10 "p1!1")
       (prop)
       (hide -3 -10)
       (expand "path_from?")
       (prop)
       (expand "path?")
       (prop)
       (expand "walk?")
       (expand "finseq_appl")
       (prop)
       (hide -2 -3)
       (install-rewrites "walks")
       (assert)
       (inst -1 "i!1")
       (prop)
       (inst 2 "j!1-1")
       (assert))
      ("4" (inst? -6) (prop))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: with_lemma
script:
  (""
   (skosimp*)
   (typepred "k!1")
   (case "k!1=0")
   (("1"
     (hide -6 2)
     (replace -1 * lr)
     (delete -2)
     (expand "many_ind")
     (inst 1 "emptyset[prewalk]")
     (prop)
     (("1"
       (expand "ind_prewalk_set?")
       (skosimp*)
       (expand "emptyset")
       (propax))
      ("2"
       (expand "st_path_set?")
       (skosimp*)
       (expand "emptyset")
       (propax))
      ("3" (lemma "finite_sets[prewalk].card_emptyset") (propax))))
    ("2"
     (lemma "short_path_k")
     (inst? -1)
     (assert)
     (skosimp*)
     (inst 3 "seq(p!1)(1)")
     (("1"
       (prop)
       (("1"
         (expand "path_from?")
         (prop)
         (expand "from?")
         (prop)
         (expand "path?")
         (prop)
         (expand "walk?")
         (expand "finseq_appl")
         (prop)
         (inst -2 "0")
         (assert)
         (typepred "p!1")
         (expand "B")
         (prop)
         (expand "good?")
         (expand "separable?")
         (propax))
        ("2"
         (case "length(p!1)>1")
         (("1"
           (inst 2 "p!1(2)")
           (("1"
             (expand "finseq_appl")
             (prop)
             (("1"
               (expand "B")
               (expand "good?")
               (expand "separable?")
               (prop)
               (expand "path_from?")
               (expand "path?")
               (expand "walk?")
               (expand "finseq_appl")
               (prop)
               (inst -3 "1")
               (assert)
               (case "length(p!1)=2")
               (("1"
                 (expand "from?")
                 (prop)
                 (replace -1 * lr)
                 (assert)
                 (reveal -1)
                 (inst -1 "0")
                 (assert))
                ("2" (assert))))
              ("2"
               (case "B(del_vert(G!1,seq(p!1)(2)),s!1,t!1,0)")
               (("1"
                 (lemma "min_B")
                 (inst -1 "del_vert(G!1,seq(p!1)(2))" "0" "s!1" "t!1")
                 (prop)
                 (skosimp*)
                 (lemma "plus_sep_vert")
                 (inst -1 "G!1" "W!2" "seq(p!1)(2)" "s!1" "t!1")
                 (case "good?(G!1,s!1,t!1)")
                 (("1"
                   (prop)
                   (("1"
                     (case "i!1<k!1-1")
                     (("1"
                       (lemma "card_add[T]")
                       (inst -1 "W!2" "seq(p!1)(2)")
                       (inst -17 " add(seq(p!1)(2), W!2)")
                       (assert)
                       (lift-if -1)
                       (prop)
                       (("1"
                         (replace -10 -3 lr)
                         (hide -1 -8 -9 -11 -14)
                         (expand "B")
                         (inst -11 " add(seq(p!1)(2), W!2)")
                         (assert))
                        ("2"
                         (replace -9 -2 lr)
                         (hide -1 -8 -10 -13)
                         (expand "B")
                         (inst -11 " add(seq(p!1)(2), W!2)")
                         (assert))
                        ("3"
                         (replace -9 -2 lr)
                         (hide -1 -7 -8 -10 -13)
                         (expand "B")
                         (inst -10 " add(seq(p!1)(2), W!2)")
                         (assert))
                        ("4"
                         (replace -8 -1 lr)
                         (hide -6 -7 -9 -12)
                         (expand "B")
                         (inst -10 " add(seq(p!1)(2), W!2)")
                         (assert))))
                      ("2"
                       (case "i!1>=k!1")
                       (("1"
                         (lemma "size_del_vert")
                         (inst -1 "G!1" "seq(p!1)(2)")
                         (("1"
                           (inst -18 "del_vert(G!1, seq(p!1)(2))")
                           (assert)
                           (expand "C")
                           (inst -18 "i!1")
                           (expand "B_many")
                           (lemma "indep_path_sub")
                           (inst -1 "G!1" "del_vert(G!1,seq(p!1)(2))"
                            "i!1" "s!1" "t!1")
                           (prop)
                           (("1"
                             (lemma "few_many")
                             (inst -1 "G!1" "i!1" "k!1" "s!1" "t!1")
                             (prop))
                            ("2"
                             (hide-all-but
                              (-2 -4 -5 -8 -10 -13 -16 1 2 5))
                             (install-rewrites "graph_ops")
                             (assert)
                             (prop)
                             (("1" (skosimp*)) ("2" (skosimp*))))))
                          ("2"
                           (hide-all-but (-9 -10 -12 1 2 5))
                           (install-rewrites "paths")
                           (assert)
                           (prop)
                           (inst -2 "2"))))
                        ("2"
                         (case "i!1=k!1-1")
                         (("1"
                           (lemma "card_add[T]")
                           (inst -1 "W!2" "seq(p!1)(2)")
                           (lift-if -1)
                           (prop)
                           (("1"
                             (assert)
                             (lemma "card_remove[T]")
                             (inst -1 "W!2" "seq(p!1)(2)")
                             (lift-if -1)
                             (prop)
                             (lemma "separ_del_vert")
                             (inst -1 "del_vert(G!1,seq(p!1)(2))" "W!2"
                              "s!1" "t!1" "seq(p!1)(2)")
                             (prop)
                             (("1"
                               (hide-all-but
                                (-1 -2 -3 -5 -6 -8 -9 -10 -11 -12 -14 -17
                                 1 2 3 4 5))
                               (expand "B")
                               (prop)
                               (inst -9 "remove(seq(p!1)(2),W!2)")
                               (assert))
                              ("2"
                               (expand "del_vert" -1)
                               (expand "remove" -1)
                               (propax))))
                            ("2"
                             (replace -8 -1 lr)
                             (replace -2 -1 lr)
                             (assert)
                             (hide-all-but
                              (-1 -2 -3 -4 -5 -8 -10 -11 -12 -13 -14 -17
                               -18 1 2 3 4 5 6 7))
                             (inst -12 "add(seq(p!1)(2),W!2)")
                             (prop)
                             (expand "attached?")
                             (prop)
                             (("1"
                               (inst -1 "seq(p!1)(2)")
                               (prop)
                               (("1"
                                 (inst -10 "2")
                                 (prop)
                                 (("1" (assert)) ("2" (assert))))
                                ("2" (expand "add") (propax))))
                              ("2"
                               (inst -1 "seq(p!1)(2)")
                               (prop)
                               (("1"
                                 (lemma "edge?_comm")
                                 (inst -1 "G!1" "seq(p!1)(2)" "t!1")
                                 (prop))
                                ("2" (expand "add") (propax))))))))
                          ("2" (assert))))))))
                    ("2"
                     (expand "path_from?")
                     (prop)
                     (expand "path?")
                     (expand "finseq_appl")
                     (prop)
                     (inst -10 "0" "2")
                     (assert)
                     (expand "from?")
                     (propax))
                    ("3"
                     (expand "path_from?")
                     (prop)
                     (expand "path?")
                     (expand "from?")
                     (prop)
                     (expand "walk?")
                     (expand "finseq_appl")
                     (prop)
                     (copy -10)
                     (inst -11 "1")
                     (assert)
                     (case "length(p!1)=2")
                     (("1"
                       (replace -1 -14 lr)
                       (assert)
                       (inst -2 "0")
                       (assert)
                       (replace -13 -2 lr)
                       (replace -14 -2 lr)
                       (expand "good?")
                       (expand "separable?")
                       (propax))
                      ("2" (assert))))))
                  ("2" (expand "B") (prop))))
                ("2"
                 (expand "B" 1)
                 (prop)
                 (("1"
                   (expand "B")
                   (expand "good?")
                   (prop)
                   (("1"
                     (hide (-3 -4 -8 -9 -10 -11 -12 5))
                     (expand "separable?")
                     (prop)
                     (expand "del_vert")
                     (expand "remove")
                     (expand "member")
                     (grind))
                    ("2"
                     (hide (-3 -4 -8 -9 -10 -11 -12 5))
                     (expand "del_vert")
                     (expand "remove")
                     (expand "member")
                     (prop)
                     (expand "separable?")
                     (prop)
                     (case "length(p!1)=2")
                     (("1"
                       (expand "path_from?")
                       (prop)
                       (expand "from?")
                       (prop)
                       (replace -1 -6 lr)
                       (assert)
                       (expand "path?")
                       (prop)
                       (expand "walk?")
                       (expand "finseq_appl")
                       (prop)
                       (inst -5 "0")
                       (assert))
                      ("2"
                       (expand "path_from?")
                       (expand "path?")
                       (expand "finseq_appl")
                       (prop)
                       (inst -4 "0" "2")
                       (assert)
                       (expand "from?")
                       (propax))))
                    ("3"
                     (expand "del_vert")
                     (expand "remove")
                     (expand "member")
                     (prop)
                     (hide (-4 -5 -9 -10 -11 -12 -13 4))
                     (expand "separable?")
                     (prop)
                     (expand "path_from?")
                     (expand "path?")
                     (expand "walk?")
                     (expand "finseq_appl")
                     (prop)
                     (copy -4)
                     (inst -5 "1")
                     (assert)
                     (case "length(p!1)=2")
                     (("1"
                       (expand "from?")
                       (prop)
                       (replace -1 -8 lr)
                       (assert)
                       (inst -2 "0")
                       (assert))
                      ("2" (assert))))))
                  ("2" (skosimp*) (assert))))))))
            ("2"
             (hide -3 -4 -6 -7 -8 -9 4)
             (expand "B")
             (prop)
             (expand "good?")
             (expand "separable?")
             (expand "path_from?")
             (expand "path?")
             (expand "finseq_appl")
             (prop)
             (expand "from?")
             (prop)
             (case "length(p!1)=2")
             (("1"
               (replace -1 -6 lr)
               (assert)
               (expand "walk?")
               (expand "finseq_appl")
               (prop)
               (inst -4 "0")
               (assert))
              ("2" (assert))))))
          ("2"
           (hide -2 -3 -5 -6 -7 -8 5)
           (expand "path_from?")
           (expand "B")
           (prop)
           (expand "from?")
           (expand "good?")
           (expand "separable?")
           (prop)
           (case "length(p!1)=2")
           (("1" (replace -1 -4 lr) (assert)) ("2" (assert))))))))
      ("2"
       (hide -2 -3 -5 -6 -7 -8 3)
       (expand "path_from?")
       (expand "B")
       (expand "good?")
       (expand "path?")
       (expand "finseq_appl")
       (expand "from?")
       (prop)
       (case "length(p!1)=1")
       (("1" (expand "separable?") (prop) (replace -1 -5 lr) (assert))
        ("2" (assert))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (expand "B_many")
   (prop)
   (case "B(del_vert(G!1,a!1),s!1,t!1,k!1-1)")
   (("1"
     (lemma "size_del_vert")
     (inst? -1)
     (("1"
       (inst -5 "del_vert(G!1,a!1)")
       (assert)
       (expand "C")
       (inst -5 "k!1-1")
       (("1"
         (expand "B_many")
         (lemma "plus_path_set")
         (expand "many_ind")
         (skosimp*)
         (inst -1 "G!1" "ips!1" "add1(gen_seq2(G!1,s!1,a!1),t!1)" "s!1"
          "t!1")
         (("1"
           (expand "B")
           (prop)
           (("1" (skosimp*) (inst 1 "ipss!1") (assert))
            ("2"
             (hide -1 -3 -6 -7 -8 -10 2)
             (expand "path_from?")
             (prop)
             (("1"
               (lemma "path?_gen_seq2")
               (lemma "path?_add1")
               (inst -2 "G!1" "s!1" "a!1")
               (typepred "G!1")
               (expand "good?" -7)
               (prop)
               (("1"
                 (expand "separable?")
                 (prop)
                 (inst -2 "dbl(s!1,a!1)")
                 (("1"
                   (inst -3 "G!1" "gen_seq2(G!1, s!1, a!1)" "t!1")
                   (prop)
                   (("1"
                     (inst -1 "a!1")
                     (expand "dbl")
                     (hide -2 -3 2)
                     (install-rewrites "walks")
                     (assert))
                    ("2"
                     (inst -2 "a!1")
                     (expand "dbl")
                     (hide -3 1)
                     (install-rewrites "walks")
                     (expand "verts_of")
                     (expand "finseq_appl")
                     (skosimp*)
                     (typepred "i!1")
                     (expand "gen_seq2")
                     (lift-if -2)
                     (prop)
                     (replace -1 -5 lr)
                     (propax))
                    ("3" (hide -1 3) (expand "gen_seq2") (propax))
                    ("4" (expand "edge?") (prop))))
                  ("2" (inst 1 "s!1" "a!1") (expand "edge?") (assert))))
                ("2"
                 (inst -1 "dbl(s!1,a!1)")
                 (("1"
                   (expand "edge?")
                   (prop)
                   (inst -1 "a!1")
                   (expand "dbl")
                   (propax))
                  ("2"
                   (inst 1 "s!1" "a!1")
                   (hide -1 -2 3)
                   (typepred "G!1")
                   (inst -1 "dbl(s!1,a!1)")
                   (("1" (expand "edge?") (assert))
                    ("2" (expand "edge?") (prop))))))))
              ("2" (install-rewrites "walks") (assert))))
            ("3"
             (case "del_vert(G!1, a!1)=del_verts(G!1,
                                                                 verts_of(add1(gen_seq2(G!1, s!1, a!1), t!1)
                                                                          ^
                                                                          (1,
                                                                           length
                                                                           (add1(gen_seq2(G!1, s!1, a!1), t!1))
                                                                           -
                                                                           2)))")
             (("1" (replace -1 -8 lr) (propax))
              ("2"
               (hide-all-but (-4 -5 -9 1))
               (install-rewrites "walks")
               (assert)
               (prop)
               (("1"
                 (expand "remove")
                 (expand "member")
                 (expand "difference")
                 (expand "member")
                 (apply-extensionality 2 :hide? t)
                 (iff)
                 (prop)
                 (("1" (skosimp*)) ("2" (inst 1 "0"))))
                ("2"
                 (apply-extensionality 2 :hide? t)
                 (iff)
                 (prop)
                 (("1" (skosimp*) (replace -1 -2 rl) (propax))
                  ("2" (inst -3 "a!1") (prop) (inst 1 "0"))))))
              ("3"
               (hide (-1 -2 -3 -6 -7 -10 2 3))
               (install-rewrites "walks")
               (assert))))))
          ("2"
           (typepred "G!1")
           (inst -1 "dbl(s!1,a!1)")
           (("1"
             (expand "edge?")
             (prop)
             (inst -1 "a!1")
             (expand "dbl")
             (propax))
            ("2" (inst 1 "s!1" "a!1") (expand "edge?") (prop))))
          ("3" (expand "B") (prop) (expand "good?") (prop))))
        ("2"
         (typepred "k!1")
         (case "k!1=0")
         (("1"
           (replace -1 2 lr)
           (expand "many_ind")
           (inst 2 "emptyset[prewalk]")
           (prop)
           (("1"
             (expand "ind_prewalk_set?")
             (skosimp*)
             (expand "emptyset")
             (propax))
            ("2"
             (expand "st_path_set?")
             (skosimp*)
             (expand "emptyset")
             (propax))
            ("3" (lemma "finite_sets[prewalk].card_emptyset") (propax))))
          ("2" (assert))))))
      ("2"
       (typepred "G!1")
       (inst -1 "dbl(s!1,a!1)")
       (("1"
         (expand "edge?")
         (prop)
         (inst -1 "a!1")
         (expand "dbl")
         (propax))
        ("2" (inst 1 "s!1" "a!1") (expand "edge?") (prop))))))
    ("2"
     (hide -3 2)
     (expand "B")
     (prop)
     (("1"
       (expand "good?")
       (prop)
       (("1"
         (expand "separable?")
         (prop)
         (hide -6)
         (install-rewrites "graph_ops")
         (assert)
         (prop))
        ("2"
         (expand "edge?")
         (prop)
         (expand "del_vert")
         (expand "remove")
         (expand "member")
         (assert))
        ("3"
         (expand "edge?")
         (assert)
         (expand "del_vert")
         (expand "remove")
         (expand "member")
         (prop))))
      ("2"
       (skosimp*)
       (case "V!1(a!1)")
       (("1"
         (inst -6 "V!1")
         (assert)
         (expand "separates")
         (prop)
         (skosimp*)
         (inst 3 "w!1")
         (hide 4)
         (expand "walk_from?")
         (prop)
         (install-rewrites "walks")
         (expand "walk?")
         (expand "finseq_appl")
         (prop)
         (("1"
           (hide -4)
           (expand "verts_in?")
           (skosimp*)
           (inst -3 "i!1")
           (expand "del_verts")
           (expand "difference")
           (expand "member")
           (prop)
           (expand "del_vert")
           (expand "remove")
           (expand "member")
           (prop)
           (replace -1 -5 lr)
           (propax))
          ("2"
           (skosimp*)
           (inst -5 "n!1")
           (assert)
           (prop)
           (("1" (inst -5 "n!1") (prop) (replace -1 -8 lr) (propax))
            ("2"
             (inst -5 "n!1+1")
             (prop)
             (replace -1 -8 lr)
             (assert))))))
        ("2"
         (inst -5 "add(a!1,V!1)")
         (prop)
         (("1"
           (lemma "finite_sets[T].card_add")
           (inst -1 "V!1" "a!1")
           (lift-if -1)
           (assert))
          ("2"
           (expand "separates")
           (prop)
           (("1"
             (expand "add")
             (expand "member")
             (prop)
             (expand "edge?")
             (prop)
             (assert))
            ("2"
             (expand "add")
             (expand "edge?")
             (assert)
             (expand "member")
             (assert))
            ("3"
             (skosimp*)
             (inst 4 "w!1")
             (case "del_verts(G!1, add(a!1, V!1))=del_verts(del_vert(G!1, a!1), V!1)")
             (("1" (replace -1 -2 lr) (propax))
              ("2"
               (hide -1 5 6)
               (install-rewrites "graph_ops")
               (assert)
               (expand "difference")
               (expand "member")
               (prop)
               (("1" (apply-extensionality 2 :hide? t) (iff) (prop))
                ("2"
                 (apply-extensionality 2 :hide? t)
                 (iff)
                 (prop)
                 (("1" (inst -3 "a!1"))
                  ("2" (skosimp*) (inst -4 "v!1") (assert))
                  ("3"
                   (skosimp*)
                   (prop)
                   (("1" (replace -1 -2 rl) (propax))
                    ("2" (inst -4 "v!1") (prop))))))))))))))))))
    ("3"
     (typepred "k!1")
     (case "k!1=0")
     (("1"
       (replace -1 2 lr)
       (expand "many_ind")
       (hide -5 -6)
       (inst 2 "emptyset[prewalk]")
       (prop)
       (("1"
         (expand "ind_prewalk_set?")
         (skosimp*)
         (expand "emptyset")
         (propax))
        ("2"
         (expand "st_path_set?")
         (skosimp*)
         (expand "emptyset")
         (propax))
        ("3" (lemma "finite_sets[prewalk].card_emptyset") (propax))))
      ("2" (assert))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: add k geq 1
script:
  (""
   (skosimp*)
   (hide -1)
   (expand "B_many")
   (prop)
   (hide -4)
   (reveal -1)
   (lemma "size_del_vert")
   (inst? -1)
   (inst -6 "del_verts(G!1, dbl[T](a!1, c!1))")
   (assert)
   (expand "C")
   (prop)
   (("1"
     (inst -1 "k!1-1")
     (("1"
       (expand "B_many")
       (expand "many_ind")
       (lemma "plus_path_set")
       (skosimp*)
       (expand "B")
       (prop)
       (inst -1 "G!1" "ips!1" "add1(add1(gen_seq2(G!1,s!1,a!1),c!1),t!1)"
        "s!1" "t!1")
       (("1"
         (prop)
         (("1" (skosimp*) (inst 1 "ipss!1") (assert))
          ("2"
           (hide -1 -3 -4 -5 -6 -11 2)
           (expand "path_from?")
           (prop)
           (("1"
             (lemma "path?_gen_seq2")
             (lemma "path?_add1")
             (inst -2 "G!1" "s!1" "a!1")
             (typepred "G!1")
             (expand "good?")
             (prop)
             (("1"
               (expand "separable?")
               (prop)
               (inst -2 "dbl(s!1,a!1)")
               (("1"
                 (copy -3)
                 (inst -1 "G!1" "gen_seq2(G!1, s!1, a!1)" "c!1")
                 (prop)
                 (("1"
                   (inst -4 "G!1" "add1(gen_seq2(G!1, s!1, a!1), c!1)"
                    "t!1")
                   (prop)
                   (("1"
                     (hide -1 -2 -3 -4 2)
                     (install-rewrites "walks")
                     (assert))
                    ("2"
                     (hide -2 -3 -4 -5 1)
                     (install-rewrites "walks")
                     (assert)
                     (prop)
                     (skosimp*)
                     (lift-if -1)
                     (prop)
                     (replace -1 -3 lr)
                     (propax))))
                  ("2" (expand "edge?") (prop))
                  ("3"
                   (hide -2 -3 -4 2)
                   (expand "edge?")
                   (prop)
                   (typepred "G!1")
                   (inst -1 "dbl(a!1,c!1)")
                   (prop)
                   (inst -1 "c!1")
                   (expand "dbl")
                   (propax))
                  ("4" (expand "edge?") (prop))
                  ("5"
                   (hide -2 -3 -4 2)
                   (install-rewrites "walks")
                   (assert))
                  ("6" (expand "edge?") (prop))
                  ("7"
                   (hide -3 -4 -5 1)
                   (install-rewrites "walks")
                   (assert)
                   (skosimp*)
                   (assert)
                   (lift-if -2)
                   (assert))
                  ("8" (expand "edge?") (prop))))
                ("2" (inst 1 "s!1" "a!1") (expand "edge?") (prop))))
              ("2"
               (hide -2 -3 2)
               (expand "edge?")
               (prop)
               (inst -1 "dbl(a!1,c!1)")
               (prop)
               (inst -1 "a!1")
               (expand "dbl")
               (propax))))
            ("2" (hide -1) (install-rewrites "walks") (assert))))
          ("3"
           (case "del_verts(G!1, dbl[T](a!1, c!1))=del_verts(G!1,
                                                                            verts_of(add1
                                                                                     (add1(gen_seq2(G!1, s!1, a!1), c!1),
                                                                                      t!1)
                                                                                     ^
                                                                                     (1,
                                                                                      length
                                                                                      (add1
                                                                                       (add1
                                                                                        (gen_seq2(G!1, s!1, a!1), c!1),
                                                                                        t!1))
                                                                                      -
                                                                                      2)))")
           (("1" (replace -1 -3 lr) (propax))
            ("2"
             (hide-all-but (-4 -5 -7 -8 -9 -10 1))
             (install-rewrites "walks")
             (assert)
             (expand "difference")
             (expand "member")
             (prop)
             (("1"
               (apply-extensionality 3 :hide? t)
               (iff)
               (prop)
               (("1"
                 (skosimp*)
                 (typepred "i!1")
                 (assert)
                 (lift-if -2)
                 (assert))
                ("2" (inst 1 "0") (assert)) ("3" (inst 1 "1") (assert))))
              ("2"
               (hide -1 3)
               (skosimp*)
               (prop)
               (("1" (replace -1 -2 lr) (propax))
                ("2" (replace -1 -2 lr) (propax))
                ("3" (replace -1 -2 lr) (propax))
                ("4" (replace -1 -2 lr) (propax))))
              ("3"
               (apply-extensionality 3 :hide? t)
               (iff)
               (prop)
               (("1"
                 (skosimp*)
                 (case "i!1=0")
                 (("1"
                   (replace -1 * lr)
                   (assert)
                   (inst -5 "a!1")
                   (replace -2 -3 rl)
                   (propax))
                  ("2"
                   (assert)
                   (inst -4 "c!1")
                   (replace -1 -2 rl)
                   (propax))))
                ("2"
                 (skosimp*)
                 (prop)
                 (("1"
                   (inst -4 "a!1")
                   (prop)
                   (("1" (replace -1 -2 lr) (propax))
                    ("2" (inst 1 "0") (assert))))
                  ("2"
                   (inst -4 "c!1")
                   (prop)
                   (("1" (replace -1 -2 lr) (propax))
                    ("2" (inst 1 "1") (assert))))))))
              ("4"
               (hide 3)
               (skosimp*)
               (assert)
               (prop)
               (("1" (assert)) ("2" (assert)) ("3" (assert))
                ("4" (assert))))))
            ("3"
             (hide -1 -2 -4 -6 -11 2 3)
             (install-rewrites "walks")
             (assert))))))
        ("2"
         (expand "edge?")
         (prop)
         (typepred "G!1")
         (inst -1 "dbl(a!1,c!1)")
         (prop)
         (inst -1 "a!1")
         (expand "dbl")
         (propax))
        ("3" (expand "good?") (prop))))
      ("2" (reveal -5) (assert))))
    ("2"
     (lemma "size_del_vert")
     (inst -2 "a!1")
     (("1"
       (inst -1 "del_vert(G!1,a!1)" "c!1")
       (("1"
         (case-replace
          "del_vert(del_vert(G!1, a!1), c!1)=del_verts(G!1, dbl[T](a!1, c!1))")
         (("1" (stop-rewrite) (assert))
          ("2"
           (hide-all-but (-4 -5 -6 1))
           (install-rewrites "graph_ops")
           (assert)
           (prop)
           (("1"
             (expand "remove")
             (expand "member")
             (expand "difference")
             (expand "member")
             (apply-extensionality 1 :hide? t)
             (bddsimp)
             (("1" (assert)) ("2" (assert)) ("3" (assert))
              ("4" (assert))))
            ("2"
             (apply-extensionality 1 :hide? t)
             (iff)
             (prop)
             (("1"
               (skosimp*)
               (prop)
               (("1" (replace -1 -2 lr) (propax))
                ("2" (replace -1 -2 lr) (propax))))
              ("2" (inst -3 "a!1")) ("3" (inst -3 "c!1"))))))))
        ("2"
         (hide -1 -2 -6 2 3)
         (typepred "G!1")
         (expand "edge?")
         (prop)
         (inst -1 "dbl[T](a!1,c!1)")
         (prop)
         (inst -1 "c!1")
         (expand "dbl")
         (expand "del_vert")
         (expand "remove")
         (expand "member")
         (assert))))
      ("2"
       (hide -1 -2 -6 2 3)
       (typepred "G!1")
       (inst -1 "dbl[T](a!1,c!1)")
       (("1"
         (expand "edge?")
         (prop)
         (inst -1 "a!1")
         (expand "dbl")
         (propax))
        ("2" (inst 1 "a!1" "c!1") (expand "edge?") (bddsimp))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: add k>=1 for tcc
script:
  (""
   (skosimp*)
   (hide -1)
   (expand "B")
   (prop)
   (("1"
     (expand "good?")
     (prop)
     (("1"
       (expand "separable?")
       (prop)
       (hide-all-but (-1 -2 -3 -4 -5 -6 1 2 3 4))
       (install-rewrites "graph_ops")
       (assert)
       (prop))
      ("2"
       (hide -7 -8 -9 -10)
       (install-rewrites "graph_ops")
       (assert)
       (prop)
       (("1" (replace -1 -4 lr) (propax))
        ("2" (replace -1 -5 rl) (propax))
        ("3" (replace -1 -3 lr) (propax))
        ("4" (replace -1 -4 rl) (propax))))
      ("3"
       (hide -7 -8 -9 -10)
       (expand "separable?")
       (prop)
       (install-rewrites "graph_ops")
       (assert)
       (prop)
       (("1" (replace -1 -4 lr) (propax))
        ("2" (replace -1 -5 rl) (propax))
        ("3" (replace -1 -3 lr) (propax))
        ("4" (replace -1 -2 rl) (propax))
        ("5" (replace -1 -4 lr) (propax))
        ("6" (replace -2 -1 rl) (propax))
        ("7" (replace -2 -1 lr) (propax))
        ("8" (replace -1 -3 rl) (propax))))))
    ("2"
     (skosimp*)
     (case "card(V!1)<k!1-2")
     (("1"
       (case "card(add(a!1,add(c!1,V!1)))<k!1")
       (("1"
         (case "separates(G!1,add(a!1,add(c!1,V!1)),s!1,t!1)")
         (("1" (inst -9 "add(a!1,add(c!1,V!1))") (prop) (assert))
          ("2"
           (hide (-1 -2 -8 -9 -10 -11 2))
           (expand "separates")
           (prop)
           (("1"
             (hide 3)
             (expand "add")
             (expand "member")
             (expand "edge?")
             (assert)
             (expand "good?")
             (expand "separable?")
             (expand "edge?")
             (prop)
             (("1" (replace -1 -4 lr) (propax))
              ("2" (replace -1 -5 rl) (propax)) ("3" (assert))
              ("4" (assert)) ("5" (replace -1 -4 lr) (propax))
              ("6" (replace -2 -5 lr) (propax))
              ("7" (replace -2 -5 lr) (propax))
              ("8" (replace -1 -4 lr) (propax))))
            ("2"
             (hide 3)
             (expand "add")
             (expand "member")
             (expand "edge?")
             (expand "good?")
             (expand "separable?")
             (expand "edge?")
             (prop)
             (("1" (replace -1 -4 lr) (propax))
              ("2" (replace -2 -3 lr) (propax))
              ("3" (replace -2 -3 lr) (propax))
              ("4" (replace -1 -2 lr) (propax))))
            ("3"
             (skosimp*)
             (case "del_verts(G!1, add(a!1, add(c!1, V!1)))=del_verts(del_verts(G!1, dbl[T](a!1, c!1)), V!1)")
             (("1" (inst 3 "w!1") (replace -1 -2 lr) (propax))
              ("2"
               (hide -1 4)
               (install-rewrites "graph_ops")
               (assert)
               (prop)
               (("1" (replace -1 -3 lr) (propax))
                ("2" (replace -1 -4 rl) (propax))
                ("3" (replace -1 -2 lr) (propax))
                ("4"
                 (expand "difference")
                 (expand "member")
                 (apply-extensionality 4 :hide? t)
                 (iff)
                 (prop)
                 (("1" (assert)) ("2" (assert)) ("3" (assert))
                  ("4" (assert))))
                ("5" (replace -1 -3 lr) (propax))
                ("6" (replace -1 -4 rl) (propax))
                ("7" (replace -1 -2 lr) (propax))
                ("8"
                 (apply-extensionality 4 :hide? t)
                 (iff)
                 (prop)
                 (("1"
                   (skosimp*)
                   (inst -4 "v!1")
                   (bddsimp)
                   (("1" (assert)) ("2" (assert))))
                  ("2" (skosimp*) (inst -4 "v!1") (bddsimp))
                  ("3"
                   (skosimp*)
                   (inst -4 "v!1")
                   (inst -5 "v!1")
                   (bddsimp)
                   (("1" (assert)) ("2" (assert))))))))))))))
        ("2"
         (lemma "card_add[T]")
         (inst -1 "add(c!1,V!1)" "a!1")
         (replace -1 1 lr)
         (hide -1 -8 -9 -11)
         (lemma "card_add[T]")
         (inst -1 "V!1" "c!1")
         (replace -1 1 lr)
         (hide -1 -3)
         (grind))))
      ("2"
       (case "card(V!1)=k!1-2")
       (("1"
         (case "separates(G!1,add(a!1,add(c!1,V!1)),s!1,t!1)")
         (("1"
           (inst -8 "add(a!1,add(c!1,V!1))")
           (inst -11 "add(a!1,add(c!1,V!1))")
           (prop)
           (("1"
             (hide-all-but (-1 -6 -7 -8 -9 3 4))
             (expand "attached?")
             (prop)
             (("1" (inst -1 "c!1") (grind))
              ("2"
               (inst -1 "a!1")
               (grind)
               (lemma "dbl_comm")
               (inst -1 "t!1" "a!1")
               (replace -1 -2 lr)
               (propax))))
            ("2"
             (hide -2 -4 -9 -10)
             (lemma "card_add[T]")
             (inst -1 "add(c!1,V!1)" "a!1")
             (replace -1 1 lr)
             (hide -1)
             (lemma "card_add[T]")
             (inst -1 "V!1" "c!1")
             (replace -1 1 lr)
             (hide -1)
             (reveal -1 -2)
             (replace -2 -3 lr)
             (replace -1 -3 lr)
             (hide -1 -2)
             (grind))))
          ("2"
           (hide (-1 -7 -8 -9 -10 2 3))
           (expand "separates")
           (prop)
           (("1"
             (expand "edge?")
             (expand "add")
             (expand "member")
             (assert)
             (bddsimp)
             (("1" (assert)) ("2" (assert)) ("3" (assert)) ("4" (assert))
              ("5"
               (assert)
               (prop)
               (hide 3)
               (expand "good?")
               (expand "separable?")
               (expand "edge?")
               (propax))
              ("6"
               (expand "good?")
               (expand "separable?")
               (expand "edge?")
               (assert))
              ("7"
               (expand "good?")
               (expand "separable?")
               (expand "edge?")
               (assert))
              ("8"
               (expand "good?")
               (expand "separable?")
               (expand "edge?")
               (assert))))
            ("2"
             (hide 3)
             (expand "good?")
             (expand "separable?")
             (expand "edge?")
             (expand "add")
             (expand "member")
             (assert)
             (prop)
             (("1" (replace -1 -4 lr) (propax))
              ("2" (replace -2 -3 lr) (propax))
              ("3" (replace -1 -3 lr) (propax))
              ("4" (replace -1 -2 lr) (propax))))
            ("3"
             (case "del_verts(G!1, add(a!1, add(c!1, V!1)))=del_verts(del_verts(G!1, dbl[T](a!1, c!1)), V!1)")
             (("1" (replace -1 -2 lr) (propax))
              ("2"
               (hide -1 4)
               (install-rewrites "graph_ops")
               (assert)
               (prop)
               (("1"
                 (expand "difference")
                 (expand "member")
                 (apply-extensionality 2 :hide? t))
                ("2"
                 (expand "difference")
                 (expand "member")
                 (apply-extensionality 3 :hide? t))
                ("3"
                 (expand "difference")
                 (expand "member")
                 (apply-extensionality 3 :hide? t))
                ("4"
                 (expand "difference")
                 (expand "member")
                 (apply-extensionality 4 :hide? t)
                 (bddsimp)
                 (("1" (assert)) ("2" (assert)) ("3" (assert))
                  ("4" (assert))))
                ("5" (apply-extensionality 2 :hide? t))
                ("6" (apply-extensionality 3 :hide? t))
                ("7" (apply-extensionality 3 :hide? t))
                ("8"
                 (apply-extensionality 4 :hide? t)
                 (iff)
                 (prop)
                 (("1" (skosimp*) (inst -4 "v!1") (assert) (grind))
                  ("2" (skosimp*) (inst -4 "v!1") (grind))
                  ("3"
                   (skosimp*)
                   (inst -4 "v!1")
                   (inst -5 "v!1")
                   (grind))))))))))))
        ("2" (assert))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: change bridge_three
script:
  (""
   (skosimp*)
   (expand "C_induct")
   (prop)
   (expand "C" 1)
   (skosimp*)
   (expand "B_many")
   (prop)
   (lemma "min_B")
   (inst? -1)
   (prop)
   (skosimp*)
   (hide -6)
   (copy -2)
   (expand "B" -1)
   (prop)
   (lemma "short_path_attach")
   (inst -1 "G!1" "W!1" "i!1" "s!1" "t!1")
   (prop)
   (("1"
     (lemma "few_many")
     (inst -1 "G!1" "i!1" "k!1" "s!1" "t!1")
     (prop))
    ("2"
     (skosimp*)
     (prop)
     (("1"
       (lemma "bridge_one")
       (inst -1 "G!1" "a!1" "i!1" "s!1" "t!1")
       (prop)
       (expand "B_many")
       (lemma "few_many")
       (inst -1 "G!1" "i!1" "k!1" "s!1" "t!1")
       (prop))
      ("2"
       (skosimp*)
       (lemma "bridge_three")
       (inst -1 "G!1" "W!1" "a!1" "c!1" "i!1" "s!1" "t!1")
       (prop)
       (("1"
         (lemma "bridge_two")
         (inst -1 "G!1" "a!1" "c!1" "i!1" "s!1" "t!1")
         (prop)
         (("1"
           (expand "B_many")
           (lemma "few_many")
           (inst -1 "G!1" "i!1" "k!1" "s!1" "t!1")
           (prop))
          ("2"
           (case "k!1=0")
           (("1"
             (replace -1 2 lr)
             (expand "many_ind")
             (inst 2 "emptyset[prewalk]")
             (prop)
             (("1"
               (expand "ind_prewalk_set?")
               (skosimp*)
               (expand "emptyset")
               (propax))
              ("2"
               (expand "st_path_set?")
               (skosimp*)
               (expand "emptyset")
               (propax))
              ("3" (lemma "card_emptyset[prewalk]") (propax))))
            ("2" (assert))))))
        ("2"
         (hide -2 -4)
         (lemma "bridge_one")
         (inst -1 "G!1" "c!1" "i!1" "s!1" "t!1")
         (prop)
         (lemma "few_many")
         (inst -1 "G!1" "i!1" "k!1" "s!1" "t!1")
         (expand "B_many")
         (prop))
        ("3"
         (hide -2 -3)
         (lemma "bridge_one")
         (inst -1 "G!1" "a!1" "i!1" "s!1" "t!1")
         (lemma "few_many")
         (inst -1 "G!1" "i!1" "k!1" "s!1" "t!1")
         (expand "B_many")
         (prop))
        ("4"
         (case "k!1=0")
         (("1"
           (replace -1 2 lr)
           (expand "many_ind")
           (inst 2 "emptyset[prewalk]")
           (prop)
           (("1"
             (expand "ind_prewalk_set?")
             (skosimp*)
             (expand "emptyset")
             (propax))
            ("2"
             (expand "st_path_set?")
             (skosimp*)
             (expand "emptyset")
             (propax))
            ("3" (lemma "card_emptyset[prewalk]") (propax))))
          ("2" (assert))))
        ("5"
         (skosimp*)
         (lemma "non_attached_induct")
         (inst -1 "G!1" "V!1" "i!1" "s!1" "t!1")
         (lemma "few_many")
         (inst -1 "G!1" "i!1" "k!1" "s!1" "t!1")
         (prop))))))
    ("3"
     (skosimp*)
     (lemma "non_attached_induct")
     (inst -1 "G!1" "V!1" "i!1" "s!1" "t!1")
     (lemma "few_many")
     (inst -1 "G!1" "i!1" "k!1" "s!1" "t!1")
     (prop))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (lemma "C_induct_lemma")
   (lemma "Menger_hard")
   (skosimp*)
   (inst -1 "s!1" "t!1")
   (bddsimp)
   (("1" (inst?)) ("2" (inst -1 "_" "s!1" "t!1"))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (lemma "Menger_k_hard")
   (skosimp*)
   (inst -1 "G!1" "s!1" "t!1")
   (expand "C")
   (expand "B_many")
   (inst -1 "k!1+1")
   (prop)
   (expand "B")
   (prop)
   (case "B(G!1,s!1,t!1,0)")
   (("1"
     (skosimp*)
     (lemma "min_B")
     (inst? -1)
     (prop)
     (skosimp*)
     (lemma "small_close")
     (inst -1 "G!1" "V!1" "s!1" "t!1")
     (prop)
     (skosimp*)
     (lemma "closed_verts")
     (inst -1 "G!1" "V!2" "s!1" "t!1")
     (prop)
     (case "card(V!2)<=k!1")
     (("1"
       (lemma "intermediate_verts")
       (inst -1 "G!1" "V!2" "k!1" "s!1" "t!1")
       (prop)
       (("1"
         (skosimp*)
         (lemma "super_separ")
         (inst -1 "G!1" "V!2" "W!2" "s!1" "t!1")
         (prop)
         (inst -19 "W!2")
         (prop)
         (("1" (hide-all-but (-1 -2 1 2)) (expand "separates") (prop))
          ("2"
           (hide -1 -2 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -18 3)
           (install-rewrites "finite_sets[T]")
           (assert)
           (prop)
           (skosimp*)
           (inst -3 "x!1")
           (prop)
           (("1" (replace -2 -3 lr) (propax))
            ("2" (replace -2 -3 lr) (propax))))))
        ("2"
         (hide-all-but (-1 -2 -3 -4 -5 -13 1 2))
         (expand "separates")
         (prop)
         (expand "green?")
         (prop))
        ("3" (assert))))
      ("2" (lemma "card_subset") (inst -1 "V!2" "V!1") (prop) (assert))))
    ("2"
     (expand "B")
     (prop)
     (skosimp*)
     (typepred "card(V!1)")
     (typepred "Card(V!1)")
     (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: replaced >k by >=k
script:
  (""
   (lemma "Menger_k_hard")
   (skosimp*)
   (expand "C")
   (expand "B_many")
   (inst -1 "G!1" "s!1" "t!1")
   (inst -1 "k!1")
   (assert)
   (prop)
   (("1"
     (expand "many_ind")
     (hide -2 -3 -4 -5)
     (ground)
     (skosimp*)
     (inst 1 "ips!1")
     (prop)
     (("1"
       (expand "restrict")
       (hide -1)
       (lemma
        "finite_sets_card_eq[prewalk,Path_from[T](G!1, s!1, t!1)].card_eq_bij")
       (inst -1 "ips!1"
        "LAMBDA (s: Path_from[T](G!1, s!1, t!1)): ips!1(s)")
       (("1"
         (prop)
         (("1" (replace -1 -4 lr) (propax))
          ("2"
           (hide 2 3)
           (inst 1 "LAMBDA (p1:(ips!1)) :p1")
           (("1" (grind)) ("2" (expand "st_path_set?") (grind))))))
        ("2"
         (hide 2)
         (typepred "ips!1")
         (hide -2)
         (case "is_finite[prewalk](ips!1) implies is_finite(restrict[prewalk[T], Path_from[T](G!1, s!1, t!1), boolean]
                                                            (ips!1))")
         (("1" (prop) (expand "restrict") (propax))
          ("2"
           (hide 2)
           (lemma
            "restrict_set_props[prewalk,Path_from[T](G!1, s!1, t!1)].restrict_finite")
           (inst -1 "ips!1"))))))
      ("2"
       (expand "ind_path_set?")
       (skosimp*)
       (expand "ind_prewalk_set?")
       (inst?)
       (prop)
       (("1" (expand "restrict") (propax))
        ("2" (expand "restrict") (propax))))))
    ("2"
     (expand "sep_num")
     (expand "B")
     (expand "good?")
     (lemma "min_sep_set_card")
     (skosimp*)
     (inst?)
     (prop)
     (replace -4 -1 lr)
     (assert))))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (typepred "W!1")
   (lemma "finite_add[T]")
   (inst -1 "W!1" "x!1")
   (lemma "all_edges_finite[T]")
   (inst -1 "add(x!1,W!1)")
   (lemma "finite_subset[doubleton[T]]")
   (inst -1 "all_edges(add(x!1,W!1))"
    "{e: doubleton[T] | EXISTS w: W!1(w) AND e = dbl[T](w, x!1)}")
   (prop)
   (hide 2)
   (expand "subset?")
   (expand "member")
   (skosimp*)
   (expand "all_edges")
   (typepred "x!2")
   (skosimp*)
   (inst 2 "w!1" "x!1")
   (hide -4 -5)
   (prop)
   (("1"
     (replace -2 -4 lr)
     (lemma "dbl_eq")
     (inst -1 "w!1" "x!3" "y!1" "x!1")
     (prop)
     (("1" (assert)) ("2" (assert))))
    ("2" (expand "add") (expand "member") (prop))
    ("3" (expand "add") (propax))))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: try
script:
  (""
   (skosimp*)
   (typepred "G!1")
   (typepred "W!1")
   (typepred "vert(G!1)")
   (case "subset?(path_verts[T](del_verts[T](G!1, W!1), x!1),vert(G!1))")
   (("1"
     (lemma "finite_subset")
     (inst -1 "vert(G!1)" "path_verts[T](del_verts[T](G!1, W!1), x!1)")
     (prop))
    ("2"
     (hide -3 2)
     (expand "subset?")
     (expand "member")
     (skosimp*)
     (expand "path_verts")
     (skosimp*)
     (expand "walk_from?")
     (prop)
     (expand "walk?")
     (prop)
     (expand "verts_in?")
     (inst -3 "length(w!1)-1")
     (expand "del_verts")
     (expand "difference")
     (expand "member")
     (prop)
     (replace -2 -3 lr)
     (propax))))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: none
script:
  (""
   (skosimp*)
   (expand "add")
   (expand "member")
   (prop)
   (expand "union")
   (expand "member")
   (prop)
   (("1"
     (typepred "Kgraph(G!1,W!1,x!1)")
     (inst -1 "e!1")
     (prop)
     (inst -1 "x!2")
     (prop))
    ("2"
     (expand "attach_edges")
     (skosimp*)
     (expand "intersection")
     (expand "member")
     (replace -2 -3 lr)
     (expand "dbl")
     (prop)
     (("1"
       (expand "Kgraph")
       (expand "subgraph")
       (expand "difference")
       (expand "member")
       (prop)
       (("1" (replace -1 -2 rl) (propax))
        ("2" (replace -1 -2 rl) (propax))
        ("3"
         (expand "Hverts")
         (expand "path_verts")
         (skosimp*)
         (expand "del_verts")
         (expand "walk_from?")
         (prop)
         (expand "walk?")
         (prop)
         (hide -4)
         (expand "verts_in?")
         (expand "difference")
         (expand "member")
         (inst -3 "length(w!2)-1")
         (prop)
         (replace -2 -4 rl)
         (replace -4 -6 rl)
         (propax))))
      ("2" (assert))))))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "long_ipss_paths")
   (inst? -1)
   (inst -1 "p!1")
   (prop)
   (("1" (assert)) ("2" (assert))))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (expand* "^" min empty_seq)
   (lemma "long_ipss_paths")
   (inst? -1)
   (inst -1 "p!1")
   (assert))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (expand* "^" min empty_seq)
   (lemma "long_ipst_paths")
   (inst? -1)
   (inst -1 "q!1")
   (assert))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (expand* "^" min empty_seq)
   (expand "empty_seq")
   (lemma "long_ipss_paths")
   (inst? -1)
   (inst -1 "p!1")
   (assert))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (hide 1)
   (expand* "^" min empty_seq)
   (expand "empty_seq")
   (lemma "long_ipst_paths")
   (inst? -1)
   (inst -1 "q!1")
   (assert))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (lemma "long_ipss_paths")
   (inst? -1)
   (inst -1 "tau!1(w!1)")
   (prop)
   (expand "image")
   (decompose-equality -6)
   (inst -1 "tau!1(w!1)")
   (iff -1)
   (prop)
   (inst 2 "w!1")
   (expand "restrict")
   (propax))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (lemma "long_ipst_paths")
   (inst? -1)
   (inst -1 "tau!1(w!1)")
   (prop)
   (expand "image")
   (decompose-equality -6)
   (inst -1 "tau!1(w!1)")
   (iff -1)
   (prop)
   (inst 2 "w!1")
   (expand "restrict")
   (propax))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "good?")
   (prop)
   (("1"
     (expand "separable?")
     (prop)
     (typepred "q!1")
     (case "length(q!1)=1")
     (("1"
       (expand "path_from?")
       (expand "path?")
       (expand "from?")
       (prop)
       (replace -1 -8 lr)
       (assert))
      ("2" (assert))))
    ("2" (assert))))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: k_menger
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "good?")
   (expand "separable?")
   (prop)
   (expand* "^" min empty_seq)
   (lift-if 3)
   (prop)
   (("1"
     (typepred "q!1")
     (case "length(q!1)=1")
     (("1"
       (expand "path_from?")
       (expand "path?")
       (prop)
       (expand "from?")
       (prop)
       (replace -1 -9 lr)
       (assert))
      ("2"
       (case "length(q!1)=2")
       (("1"
         (expand "path_from?")
         (expand "path?")
         (expand "walk?")
         (expand "from?")
         (expand "finseq_appl")
         (prop)
         (replace -1 -10 lr)
         (assert)
         (inst -7 "0")
         (assert))
        ("2" (assert))))))
    ("2" (grind)) ("3" (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_defs
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (assert)
   (expand "H")
   (expand "path_comp")
   (expand "subgraph")
   (expand "del_vert")
   (expand "remove")
   (expand "member")
   (expand "path_verts")
   (expand "walk_from?")
   (inst + "gen_seq1(G!1,s!1)")
   (expand "gen_seq1")
   (expand "walk?")
   (expand "verts_in?")
   (propax))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_defs
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (expand "path?")
   (flatten)
   (hide -2)
   (expand "walk?")
   (flatten)
   (hide -2)
   (expand "verts_in?")
   (expand "H")
   (expand "path_comp")
   (expand "subgraph")
   (expand "del_vert")
   (expand "remove")
   (expand "member")
   (expand "verts_of")
   (expand "finseq_appl")
   (split 1)
   (("1" (skosimp*) (inst?) (assert))
    ("2" (assert) (skosimp*) (inst?) (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_defs
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "path?")
   (split 1)
   (("1"
     (flatten)
     (typepred "H(G!1, s!1, w1!1, w2!1)")
     (hide -1 -4)
     (lemma "walk?_subgraph")
     (inst?)
     (inst?)
     (assert))
    ("2" (flatten))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_defs
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (expand "H")
   (expand "path_comp")
   (expand "walk?")
   (flatten)
   (split +)
   (("1"
     (hide -2)
     (expand "verts_in?")
     (skosimp*)
     (inst?)
     (expand "subgraph")
     (expand "del_vert")
     (expand "remove")
     (expand "member")
     (assert)
     (expand "verts_of")
     (inst?)
     (expand "finseq_appl")
     (inst?)
     (assert)
     (expand "path_verts")
     (expand "walk_from?")
     (inst 1 "p!1^(0,i!1)")
     (("1"
       (expand* "^" min empty_seq)
       (expand "walk?")
       (split +)
       (("1"
         (expand "verts_in?")
         (skosimp*)
         (reveal -1)
         (inst?)
         (assert)
         (reveal 2 3)
         (expand "finseq_appl")
         (hide 4 5 -2)
         (inst?)
         (inst?)
         (assert))
        ("2"
         (expand "finseq_appl")
         (skosimp*)
         (expand "edge?")
         (hide -2 2 3)
         (reveal -3)
         (inst - "n!1")
         (assert)
         (expand "finseq_appl")
         (expand "edge?")
         (flatten)
         (assert)
         (hide -1 -3)
         (reveal 4 5)
         (expand "finseq_appl")
         (inst-cp + "n!1")
         (inst + "n!1+1")
         (inst-cp + "n!1")
         (inst + "n!1+1")
         (expand "dbl")
         (ground))))
      ("2" (expand* "^" min empty_seq) (assert))))
    ("2"
     (skosimp*)
     (expand "finseq_appl")
     (expand "edge?")
     (inst?)
     (assert)
     (flatten)
     (assert)
     (expand "subgraph")
     (expand "del_vert")
     (split +)
     (("1"
       (expand "verts_of" 2)
       (inst-cp + "n!1")
       (inst + "n!1+1")
       (expand "finseq_appl")
       (expand "dbl")
       (ground))
      ("2"
       (expand "verts_of" 3)
       (inst-cp + "n!1")
       (inst + "n!1+1")
       (expand "finseq_appl")
       (expand "dbl")
       (ground))
      ("3"
       (skosimp*)
       (expand "path_verts")
       (expand "walk_from?")
       (expand "dbl")
       (split -1)
       (("1"
         (inst 1 "p!1^(0,n!1)")
         (("1"
           (expand* "^" min empty_seq)
           (assert)
           (expand "walk?")
           (split +)
           (("1"
             (expand "verts_in?")
             (skosimp*)
             (expand "remove")
             (expand "member")
             (inst?)
             (assert)
             (expand "verts_of")
             (inst + "i!1")
             (inst + "i!1")
             (expand "finseq_appl")
             (ground))
            ("2"
             (skosimp*)
             (expand "finseq_appl")
             (expand "edge?")
             (assert)
             (reveal -1)
             (inst?)
             (assert)
             (flatten)
             (assert)
             (expand "dbl")
             (expand "verts_of")
             (inst-cp + "n!2")
             (inst + "n!2+1")
             (inst-cp + "n!2")
             (inst + "n!2+1")
             (expand "finseq_appl")
             (ground))))
          ("2" (expand* "^" min empty_seq) (assert))))
        ("2"
         (inst 1 "p!1^(0,n!1+1)")
         (("1"
           (expand* "^" min empty_seq)
           (assert)
           (expand "walk?")
           (split +)
           (("1"
             (expand "verts_in?")
             (skosimp*)
             (expand "remove")
             (expand "member")
             (inst?)
             (assert)
             (expand "verts_of")
             (inst-cp + "i!1")
             (inst + "i!1+1")
             (("1"
               (inst-cp + "i!1")
               (inst + "i!1+1")
               (("1" (expand "finseq_appl") (assert))
                ("2"
                 (assert)
                 (typepred "i!1")
                 (expand "finseq_appl")
                 (assert))))
              ("2"
               (expand "finseq_appl")
               (assert)
               (typepred "i!1")
               (inst?)
               (assert))))
            ("2"
             (skosimp*)
             (expand "edge?")
             (expand "finseq_appl")
             (reveal -1)
             (inst?)
             (assert)
             (flatten)
             (assert)
             (expand "verts_of")
             (expand "finseq_appl")
             (inst-cp + "n!2")
             (inst + "n!2+1")
             (inst-cp + "n!2")
             (inst + "n!2+1")
             (expand "dbl")
             (ground))))
          ("2" (expand* "^" min empty_seq) (assert))))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_defs
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "subset?")
   (expand "member")
   (skosimp*)
   (expand "meng")
   (expand "add")
   (expand "member")
   (assert)
   (expand "H")
   (expand "path_comp")
   (expand "subgraph")
   (expand "del_vert")
   (expand "remove")
   (expand "member")
   (expand "in?")
   (flatten)
   (expand "disjoint?")
   (flatten)
   (assert))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_defs
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (apply-extensionality 1 :hide? t)
   (("1"
     (apply-extensionality 1 :hide? t)
     (expand "del_vert")
     (iff 1)
     (ground))
    ("2"
     (apply-extensionality 1 :hide? t)
     (expand "del_vert")
     (expand "remove")
     (expand "member")
     (iff 1)
     (ground))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_defs
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (hide -1)
   (expand "meng")
   (case-replace "H(G!1, t!1, w2!1, w1!1) = H(G!1, t!1, w1!1, w2!1)")
   (("1"
     (split 3)
     (("1"
       (hide -1)
       (apply-extensionality 1 :hide? t)
       (expand "add")
       (expand "member")
       (iff)
       (ground))
      ("2"
       (apply-extensionality 1 :hide? t)
       (("1"
         (expand "union")
         (expand "add")
         (expand "member")
         (iff)
         (lemma "incident_comm")
         (inst?)
         (lemma "incident_comm")
         (inst -1 "G!1" "t!1" "w2!1" "w1!1" "w2!1")
         (replace -1)
         (hide -1)
         (replace -1)
         (hide -1)
         (ground))
        ("2" (inst?) (assert)) ("3" (inst?) (assert))))))
    ("2" (hide 4) (lemma "H_comm") (inst?))))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: meng_scaff_defs
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "subgraph?")
   (split 1)
   (("1"
     (expand "subset?")
     (skosimp*)
     (expand "path_comp")
     (expand "subgraph")
     (expand "del_vert")
     (expand "member")
     (flatten)
     (hide -2)
     (expand "remove")
     (expand "member")
     (flatten)
     (propax))
    ("2"
     (expand "subset?")
     (skosimp*)
     (expand "member")
     (expand "path_comp")
     (expand "subgraph")
     (flatten)
     (hide -2)
     (expand "del_vert")
     (flatten)
     (propax))))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: meng_scaff_defs
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (lemma "finite_subset[Dbl]")
   (inst?)
   (inst -1 "edges(G!1)")
   (assert)
   (hide 2)
   (expand "subset?")
   (skosimp*)
   (expand "member")
   (skosimp*))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: meng_scaff_defs
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "add")
   (flatten)
   (expand "member")
   (flatten)
   (split -1)
   (("1" (replace -1 * rl) (hide -1) (expand "dbl") (ground))
    ("2" (replace -1 * rl) (hide -1) (expand "dbl") (ground))
    ("3"
     (expand "union")
     (expand "member")
     (split -1)
     (("1"
       (typepred "H(G!1, x!1, w1!1, w2!1)")
       (inst?)
       (assert)
       (inst?)
       (assert))
      ("2"
       (expand "incident")
       (skosimp*)
       (replace -2)
       (hide -2)
       (expand "dbl")
       (split -)
       (("1" (replace -1) (propax)) ("2" (replace -1) (propax))))
      ("3"
       (expand "incident")
       (skosimp*)
       (replace -2)
       (hide -2)
       (expand "dbl" -3)
       (split -3)
       (("1" (replace -1) (propax)) ("2" (assert))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "first")
   (lemma "min_lem")
   (inst?)
   (("1" (expand "minimum?") (flatten))
    ("2"
     (hide 2)
     (expand "nonempty?")
     (typepred "ps!1")
     (skosimp*)
     (expand "empty?")
     (expand "member")
     (inst?)
     (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "first")
   (lemma "min_lem")
   (inst?)
   (("1" (expand "minimum?") (flatten) (assert) (inst -3 "i!1") (assert))
    ("2"
     (typepred "ps!1")
     (skosimp*)
     (expand "nonempty?")
     (expand "empty?")
     (expand "member")
     (inst?)
     (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (expand "separates")
   (flatten)
   (expand "dbl")
   (expand "singleton")
   (flatten)
   (assert)
   (expand "in?")
   (expand "disjoint?")
   (flatten)
   (expand "verts_of")
   (expand "finseq_appl")
   (case "(EXISTS (i: below(length(p!1))): seq(p!1)(i) = w1!1 OR seq(p!1)(i) = w2!1)")
   (("1"
     (skosimp*)
     (name "ipf" "first((LAMBDA (x:T): x = w1!1 OR x = w2!1),p!1)")
     (("1"
       (lemma "first_lem")
       (inst?)
       (lemma "first_not")
       (inst?)
       (replace -3)
       (hide -3)
       (expand "walk_from?")
       (flatten)
       (case "walk?(G!1,p!1^(0,ipf))")
       (("1"
         (case "NOT verts_of(p!1^(0,ipf))(t!1)")
         (("1"
           (hide 11 13)
           (case "walk?(H(G!1,s!1,w1!1,w2!1),trunc1(p!1^(0,ipf)))")
           (("1"
             (case "walk?(meng(G!1,s!1,t!1,w1!1,w2!1),p!1^(0,ipf))")
             (("1"
               (name-replace "Ms" "meng(G!1, s!1, t!1, w1!1, w2!1)")
               (hide -2 -3 -9)
               (case "walk?(Ms,add1(p!1^(0,ipf),t!1))")
               (("1"
                 (case-replace
                  "del_verts(Ms, {y: T | y = z!1}) = del_vert(Ms,z!1)")
                 (("1"
                   (inst + "add1(p!1^(0,ipf),t!1)")
                   (rewrite "walk?_del_vert_not")
                   (("1"
                     (hide -1 -2 -3 -4 -5 -6 11)
                     (expand "add1")
                     (expand* "^" "min" "empty_seq")
                     (assert))
                    ("2"
                     (hide -2 -3 -4 -5 -6 -7 6 11)
                     (expand "verts_of")
                     (expand "finseq_appl")
                     (expand "add1")
                     (skosimp*)
                     (expand* "^" "min")
                     (assert)
                     (inst?)
                     (lift-if)
                     (ground)
                     (expand* "^" "min")
                     (reveal 3)
                     (inst?))))
                  ("2"
                   (hide -1 -2 -3 -4 -5 -6 -7 -8 2 5)
                   (apply-extensionality 1 :hide? t)
                   (("1"
                     (apply-extensionality 1 :hide? t)
                     (("1"
                       (iff 1)
                       (expand "del_verts")
                       (expand "del_vert")
                       (ground)
                       (("1" (inst?)) ("2" (skosimp*) (assert))))
                      ("2"
                       (lemma "finite_singleton[T]")
                       (inst?)
                       (expand "singleton")
                       (propax))))
                    ("2"
                     (expand "del_vert")
                     (expand "del_verts")
                     (apply-extensionality 1 :hide? t)
                     (iff 1)
                     (expand "difference")
                     (expand "member")
                     (expand "remove")
                     (expand "member")
                     (ground))
                    ("3"
                     (lemma "finite_singleton[T]")
                     (expand "singleton")
                     (inst?))))
                  ("3"
                   (lemma "finite_singleton[T]")
                   (expand "singleton")
                   (inst?))))
                ("2"
                 (hide -2 -3 -4 -5 -6 5 6 7 12)
                 (lemma "walk?_add1")
                 (inst?)
                 (assert)
                 (hide -1 2)
                 (reveal -11)
                 (replace -1 * rl)
                 (hide -1)
                 (split +)
                 (("1" (expand "meng") (expand "add") (propax))
                  ("2"
                   (expand "edge?")
                   (expand* "^" "min")
                   (expand "verts_of")
                   (expand "finseq_appl")
                   (inst?)
                   (assert)
                   (reveal -4)
                   (expand "meng")
                   (expand "union")
                   (expand "add")
                   (expand "member")
                   (flatten)
                   (ground))))))
              ("2"
               (hide -3 -5 7 12)
               (expand "walk?")
               (expand "finseq_appl")
               (flatten)
               (split +)
               (("1"
                 (expand "verts_in?")
                 (skosimp*)
                 (typepred "i!2")
                 (expand "^" -1)
                 (expand "min" -1)
                 (expand "empty_seq" -1)
                 (assert)
                 (case "i!2 = ipf")
                 (("1"
                   (hide -2 -3 -4 -6 -11)
                   (replace -1)
                   (hide -1)
                   (expand "meng")
                   (expand "^")
                   (expand "verts_of")
                   (expand "finseq_appl")
                   (expand "add")
                   (expand "member")
                   (hide -1)
                   (inst? -)
                   (ground))
                  ("2"
                   (hide -3 -4 -5 -9 -10)
                   (inst?)
                   (("1"
                     (expand "meng")
                     (expand "trunc1")
                     (expand* "^" "min" "empty_seq")
                     (expand "add")
                     (expand "member")
                     (flatten)
                     (assert))
                    ("2"
                     (expand "trunc1" 1)
                     (expand "^" 1)
                     (expand "min" 1)
                     (expand "empty_seq" 1)
                     (assert))))))
                ("2"
                 (skosimp*)
                 (expand "^" -1)
                 (expand "min" -1)
                 (expand "empty_seq" -1)
                 (assert)
                 (case "n!1 = ipf - 1")
                 (("1"
                   (hide -3 -4)
                   (inst?)
                   (expand "verts_in?")
                   (hide 2)
                   (expand "edge?")
                   (expand* "^" "min" "empty_seq")
                   (inst?)
                   (("1"
                     (flatten)
                     (assert)
                     (expand "meng")
                     (expand "union")
                     (expand "add")
                     (expand "member")
                     (flatten)
                     (replace -1)
                     (hide -1)
                     (assert)
                     (expand "incident")
                     (inst + "seq(p!1)(ipf-1)")
                     (inst + "seq(p!1)(ipf-1)")
                     (hide 1 2 3)
                     (reveal -4)
                     (expand "verts_in?")
                     (inst -1 "ipf-1")
                     (("1"
                       (expand "trunc1" -1)
                       (expand "^" -1)
                       (expand "min" -1)
                       (rewrite "dbl_comm" 1)
                       (split -5)
                       (("1" (replace -1) (propax))
                        ("2" (replace -1) (propax))))
                      ("2"
                       (expand "trunc1" 1)
                       (expand "^" 1)
                       (expand "min" 1)
                       (propax))))
                    ("2" (expand "^" 1) (expand "min" 1) (assert))))
                  ("2"
                   (hide -4 -5 -9 -10)
                   (expand "edge?")
                   (inst - "n!1")
                   (hide -2 3)
                   (expand "trunc1")
                   (expand* "^" "min" "empty_seq")
                   (assert)
                   (flatten)
                   (assert)
                   (expand "meng")
                   (expand "union")
                   (expand "add")
                   (expand "member")
                   (propax))))))
              ("3" (propax)) ("4" (propax)) ("5" (propax))
              ("6" (propax))))
            ("2"
             (lemma "walk?_H")
             (inst?)
             (assert)
             (hide 2)
             (case "walk?(G!1, trunc1(p!1 ^ (0, ipf)))")
             (("1"
               (assert)
               (hide -1 -2 7 12)
               (expand "trunc1")
               (expand* "^" "min" "empty_seq")
               (expand "verts_of")
               (expand "finseq_appl")
               (split +)
               (("1" (assert) (lift-if) (assert) (ground))
                ("2" (flatten) (assert))
                ("3" (flatten) (skosimp*) (inst - "i!2") (assert))
                ("4" (flatten) (skosimp*))
                ("5" (flatten) (skosimp*) (inst - "i!2") (assert))))
              ("2"
               (hide 2)
               (hide -2 2 7 12)
               (expand "trunc1")
               (rewrite "walk?_caret")
               (("1" (expand "^" 1) (expand "min" 1) (assert))
                ("2" (expand "^" 1) (expand "min" 1) (assert))))))
            ("3"
             (expand "^" 1)
             (expand "min" 1)
             (expand "empty_seq" 1)
             (assert))))
          ("2"
           (hide 3 4 5 11)
           (assert)
           (expand "verts_of")
           (skosimp*)
           (expand "finseq_appl")
           (expand "^" -1)
           (inst + "p!1^(0,i!2)")
           (("1"
             (expand "^" 7)
             (expand "min" 7)
             (assert)
             (expand "walk?")
             (expand "finseq_appl")
             (flatten)
             (split +)
             (("1"
               (expand "verts_in?")
               (typepred "i!2")
               (expand "^" -1)
               (expand "min" -1)
               (assert))
              ("2"
               (expand "verts_in?")
               (skosimp*)
               (expand "del_verts")
               (expand "difference")
               (expand "member")
               (typepred "i!3")
               (typepred "i!2")
               (expand "^" -1)
               (expand "min" -1)
               (assert)
               (inst -11 "i!3")
               (assert)
               (case "i!3 = ipf")
               (("1" (assert)) ("2" (inst -7 "i!3") (assert))))
              ("3"
               (skosimp*)
               (expand "edge?")
               (inst - "n!1")
               (hide -3)
               (expand* "^" "min")
               (case "n!1 = ipf")
               (("1"
                 (replace -1)
                 (hide -1)
                 (hide -3)
                 (inst -9 "ipf")
                 (typepred "i!2")
                 (expand* "^" "min")
                 (assert))
                ("2"
                 (assert)
                 (typepred "i!2")
                 (expand "^" -1)
                 (expand "min" -1)
                 (assert)
                 (flatten)
                 (assert)
                 (expand "del_verts")
                 (skosimp*)
                 (hide -12 -13 -18 9)
                 (inst-cp -7 "n!1")
                 (inst -7 "n!1+1")
                 (assert)
                 (case "n!1 = ipf -1")
                 (("1" (assert))
                  ("2" (assert) (expand "dbl") (ground))))))))
            ("2"
             (typepred "i!2")
             (expand "^" -1)
             (expand "min" -1)
             (assert)
             (expand "^" 1)
             (expand "min" 1)
             (assert))))))
        ("2" (rewrite "walk?_caret"))
        ("3"
         (expand "^" 1)
         (expand "min" 1)
         (expand "empty_seq" 1)
         (assert)
         (lift-if)
         (ground))))
      ("2" (inst?))))
    ("2"
     (inst 11 "p!1")
     (hide 6 12)
     (expand "walk_from?")
     (flatten)
     (assert)
     (expand "walk?")
     (expand "finseq_appl")
     (split +)
     (("1"
       (flatten)
       (expand "verts_in?")
       (expand "del_verts")
       (expand "difference")
       (expand "member")
       (skosimp*)
       (inst? -)
       (assert)
       (inst?))
      ("2"
       (skosimp*)
       (expand "edge?")
       (inst?)
       (("1"
         (inst? -)
         (assert)
         (flatten)
         (assert)
         (expand "del_verts")
         (skosimp*)
         (expand "dbl")
         (ground)
         (("1" (reveal 1) (inst 1 "n!1+1") (assert))
          ("2" (reveal 1) (inst 1 "n!1+1") (assert))))
        ("2" (assert))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "sep_num_le1")
   (inst -1 "meng(G!1, s!1, t!1, w1!1, w2!1)" "w1!1" "s!1" "t!1")
   (("1"
     (assert)
     (split -1)
     (("1"
       (skosimp*)
       (hide 1 2)
       (hide -7 -8)
       (lemma "sep_num_is_1")
       (inst?)
       (inst -1 "z!1")
       (assert)
       (split 1)
       (("1"
         (expand "separates")
         (flatten)
         (expand "singleton")
         (assert))
        ("2"
         (expand "separates")
         (flatten)
         (assert)
         (expand "singleton")
         (assert))
        ("3"
         (skosimp*)
         (lemma "meng_to_G_sep")
         (inst?)
         (inst?)
         (assert)
         (expand "in?")
         (expand "verts_of")
         (skosimp*)
         (expand "finseq_appl")
         (inst?))))
      ("2"
       (hide -6 -7 -8 -9 -10)
       (expand "meng")
       (expand "add")
       (expand "member")
       (expand "disjoint?")
       (flatten)
       (lemma "vert_H_s")
       (inst?)
       (assert))
      ("3"
       (hide -6 -7 -8 -9 -10)
       (expand "meng")
       (expand "add")
       (propax))
      ("4"
       (hide -6 -7 -8 -9 -10)
       (expand "meng")
       (expand "add")
       (flatten)
       (expand "member")
       (propax))
      ("5" (expand "disjoint?") (flatten))
      ("6" (expand "disjoint?") (flatten))
      ("7"
       (assert)
       (hide -6 -7 -10 2)
       (expand "separable?")
       (flatten)
       (assert)
       (expand "meng")
       (expand "edge?")
       (expand "add")
       (expand "union")
       (expand "member")
       (expand "disjoint?")
       (flatten)
       (split -1)
       (("1" (lemma "dbl_eq") (inst?) (assert))
        ("2" (lemma "dbl_eq") (inst?) (assert))
        ("3"
         (expand "H")
         (expand "path_comp")
         (expand "subgraph")
         (flatten)
         (inst -2 "t!1")
         (expand "dbl")
         (hide -2)
         (expand "del_vert")
         (flatten))
        ("4" (expand "incident") (skosimp*))
        ("5" (expand "incident") (skosimp*))))))
    ("2" (assert) (expand "disjoint?") (propax))
    ("3" (expand "disjoint?") (flatten) (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (expand "sep_num")
   (expand "in?")
   (expand "disjoint?")
   (flatten)
   (case "separates(meng(G!1, s!1, t!1, w1!1, w2!1), dbl(w1!1, w2!1), s!1, t!1)")
   (("1"
     (assert)
     (lemma "min_sep_set_card")
     (inst?)
     (("1"
       (assert)
       (rewrite "card_dbl")
       (lemma "prep_14")
       (inst?)
       (assert)
       (expand "sep_num")
       (expand "disjoint?")
       (propax))
      ("2" (hide -1 8) (expand "meng") (expand "add") (propax))
      ("3"
       (hide -1 8)
       (expand "meng")
       (expand "add")
       (expand "member")
       (lemma "vert_H_s")
       (inst?)
       (assert))))
    ("2"
     (hide 8)
     (expand "separates")
     (flatten)
     (expand "dbl" 1 (1 2))
     (assert)
     (skosimp*)
     (inst + "w!1")
     (expand "walk_from?")
     (flatten)
     (assert)
     (expand "walk?")
     (split +)
     (("1"
       (flatten)
       (hide -4)
       (expand "verts_in?")
       (skosimp*)
       (expand "del_verts")
       (expand "difference")
       (expand "member")
       (expand "meng")
       (inst?)
       (flatten)
       (expand "add")
       (expand "member")
       (ground)
       (expand "H")
       (expand "path_comp")
       (expand "subgraph")
       (flatten)
       (expand "del_vert")
       (expand "remove")
       (expand "member")
       (propax))
      ("2"
       (flatten)
       (skosimp*)
       (expand "finseq_appl")
       (expand "edge?")
       (inst?)
       (assert)
       (flatten)
       (assert)
       (expand "del_verts")
       (flatten)
       (expand "meng")
       (expand "union")
       (expand "add")
       (expand "member")
       (split +)
       (("1"
         (expand "verts_in?")
         (expand "difference")
         (expand "member")
         (split -5)
         (("1"
           (lemma "dbl_eq")
           (inst?)
           (assert)
           (hide -2)
           (split -1)
           (("1"
             (flatten)
             (inst -6 "n!1")
             (assert)
             (inst?)
             (expand "dbl")
             (propax))
            ("2"
             (flatten)
             (inst -6 "n!1+1")
             (assert)
             (inst?)
             (expand "dbl")
             (propax))))
          ("2"
           (lemma "dbl_eq")
           (inst?)
           (assert)
           (split -1)
           (("1"
             (flatten)
             (inst -7 "n!1")
             (assert)
             (inst?)
             (expand "dbl")
             (propax))
            ("2"
             (flatten)
             (inst -7 "n!1+1")
             (assert)
             (inst?)
             (expand "dbl")
             (propax))))
          ("3"
           (expand "H")
           (expand "path_comp")
           (expand "subgraph")
           (flatten)
           (expand "del_vert")
           (flatten))
          ("4" (expand "incident") (skosimp*))
          ("5" (expand "incident") (skosimp*))))
        ("2" (propax))))))
    ("3" (assert)) ("4" (assert)) ("5" (propax)) ("6" (propax))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "sep_num_gt_0")
   (inst -1 "G!1" "s!1" "t!1")
   (expand "in?")
   (flatten)
   (assert)
   (skosimp*)
   (lemma "walk_to_path_from")
   (inst?)
   (assert)
   (skosimp*)
   (hide -2)
   (case "(EXISTS (i: below(length(p!1))): seq(p!1)(i) = w1!1 OR
                                                  seq(p!1)(i) = w2!1)")
   (("1"
     (skosimp*)
     (case "seq(p!1)(i!1) = w1!1")
     (("1"
       (hide -2)
       (lemma "one_to_each")
       (inst -1 "G!1" "s!1" "t!1" "w1!1" "w2!1")
       (assert))
      ("2"
       (assert)
       (lemma "one_to_each")
       (inst -1 "G!1" "s!1" "t!1" "w2!1" "w1!1")
       (assert)
       (split -1)
       (("1"
         (flatten)
         (skosimp*)
         (split +)
         (("1" (inst?)) ("2" (inst?))))
        ("2" (hide -1 -2 -3 -4 -5 -6 -7 2 3) (rewrite "dbl_comm"))))))
    ("2"
     (expand "separates")
     (flatten)
     (inst 4 "p!1")
     (hide -7 5)
     (expand "walk_from?")
     (expand "path_from?")
     (flatten)
     (expand "from?")
     (flatten)
     (assert)
     (expand "path?")
     (flatten)
     (hide -2)
     (expand "walk?")
     (split 4)
     (("1"
       (flatten)
       (hide -2)
       (expand "verts_in?")
       (skosimp*)
       (expand "del_verts")
       (expand "difference")
       (expand "member")
       (expand "dbl")
       (inst?)
       (inst?)
       (ground))
      ("2"
       (skosimp*)
       (inst? -)
       (assert)
       (expand "edge?")
       (flatten)
       (assert)
       (expand "del_verts")
       (skosimp*)
       (expand "dbl")
       (inst-cp 1 "n!1")
       (inst 1 "n!1+1")
       (expand "finseq_appl")
       (ground))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (case "separates(G!1, singleton(w2!1), s!1, t!1)")
   (("1"
     (hide -2 -3 -4)
     (expand "sep_num")
     (lemma "min_sep_set_card")
     (inst?)
     (assert)
     (hide -2)
     (rewrite "card_singleton"))
    ("2"
     (expand "separates")
     (flatten)
     (split +)
     (("1" (expand "singleton") (expand "dbl") (assert))
      ("2" (expand "singleton") (expand "dbl") (assert))
      ("3"
       (skosimp*)
       (lemma "walk_to_path_from")
       (inst?)
       (assert)
       (skosimp*)
       (hide -2)
       (inst + "p!1")
       (expand "path_from?")
       (flatten)
       (lemma "path?_del_verts")
       (inst?)
       (assert)
       (lemma "path?_rev")
       (inst?)
       (assert)
       (expand "path?" -3)
       (expand "finseq_appl")
       (flatten)
       (expand "walk_from?")
       (assert)
       (expand "from?")
       (flatten)
       (assert)
       (expand "walk?")
       (expand "finseq_appl")
       (flatten)
       (split +)
       (("1"
         (expand "verts_in?")
         (skosimp*)
         (expand "del_verts")
         (expand "difference")
         (expand "member")
         (inst?)
         (assert)
         (flatten)
         (assert)
         (expand "dbl")
         (expand "singleton")
         (assert)
         (inst -10 "rev(p!1)^(0,(length(p!1) - i!1 - 1))")
         (("1"
           (rewrite "path?_caret")
           (("1"
             (expand* "^" "min")
             (expand "rev")
             (expand "verts_of")
             (expand "finseq_appl")
             (skosimp*)
             (reveal -2)
             (inst -1 "length(p!1) - 1 - i!2")
             (flatten)
             (expand "singleton")
             (propax))
            ("2" (expand "rev") (assert))))
          ("2" (expand* "^" "min") (assert) (expand "rev") (assert))))
        ("2"
         (skosimp*)
         (expand "edge?")
         (inst?)
         (assert)
         (flatten)
         (assert)
         (expand "del_verts")
         (assert)
         (flatten)
         (assert)
         (expand "verts_in?")
         (expand "difference")
         (expand "member")
         (expand "singleton")
         (skosimp*)
         (inst -8 "v!1")
         (expand "dbl")
         (ground)
         (("1"
           (replace -1)
           (hide -1)
           (inst -11 "rev(p!1)^(0,length(p!1) - n!1 - 1)")
           (("1"
             (rewrite "path?_caret")
             (("1"
               (expand* "^" "min")
               (expand "rev")
               (expand "verts_of")
               (expand "finseq_appl")
               (skosimp*)
               (inst -5 "length(p!1) - 1 - i!1")
               (flatten))
              ("2" (expand "rev") (assert))))
            ("2" (expand "rev") (assert) (expand* "^" "min") (assert))))
          ("2"
           (replace -1)
           (hide -1)
           (inst -11 "rev(p!1)^(0,length(p!1) - n!1 - 2)")
           (("1"
             (rewrite "path?_caret")
             (("1"
               (expand* "^" "min" "empty_seq")
               (expand "rev")
               (expand "verts_of")
               (expand "finseq_appl")
               (skosimp*)
               (inst -5 "length(p!1) - 1 - i!1")
               (flatten))
              ("2" (expand "rev") (assert))))
            ("2"
             (expand* "^" "min" "empty_seq")
             (assert)
             (expand "rev")
             (assert))))))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "prep_16")
   (inst?)
   (assert)
   (skosimp*)
   (hide -3 -4 -5 -6)
   (lemma "path_from_l")
   (inst?)
   (assert)
   (expand "disjoint?")
   (flatten)
   (assert)
   (case "length(p!1) = 2")
   (("1"
     (expand "path_from?")
     (flatten)
     (expand "from?")
     (flatten)
     (replace -1)
     (hide -1)
     (assert)
     (expand "path?")
     (flatten)
     (expand "walk?")
     (expand "finseq_appl")
     (flatten)
     (inst -3 "0")
     (assert)
     (expand "edge?")
     (rewrite "dbl_comm")
     (assert))
    ("2"
     (expand "path_from?")
     (flatten)
     (expand "from?")
     (flatten)
     (inst + "seq(p!1)(1)")
     (expand "path?")
     (flatten)
     (expand "finseq_appl")
     (inst-cp - "0" "1")
     (assert)
     (expand "H")
     (expand "path_comp")
     (expand "subgraph")
     (case "vert(del_vert(del_vert(G!1, w1!1), w2!1))(seq(p!1)(1))")
     (("1"
       (assert)
       (expand "path_verts")
       (skosimp*)
       (inst + "p!1^(0,1)")
       (("1"
         (expand "walk_from?")
         (expand* "^" "min")
         (expand "walk?")
         (expand "finseq_appl")
         (split +)
         (("1"
           (expand "verts_in?")
           (skosimp*)
           (hide -1)
           (expand "del_vert")
           (expand "remove")
           (expand "member")
           (split +)
           (("1"
             (expand "verts_of")
             (inst? +)
             (expand "finseq_appl")
             (assert))
            ("2" (hide -2 -3) (inst - "length(p!1)-1" "i!1") (assert))
            ("3" (inst?))))
          ("2"
           (skosimp*)
           (expand "edge?")
           (inst?)
           (assert)
           (expand "del_vert")
           (split +)
           (("1"
             (ground)
             (expand "dbl")
             (expand "remove")
             (expand "member")
             (flatten)
             (inst - "1+n!1" "length(p!1)-1")
             (assert))
            ("2"
             (expand "dbl")
             (expand "verts_of")
             (expand "finseq_appl")
             (inst + "1+n!1")
             (assert))))))
        ("2" (expand* "^" "min") (assert))))
      ("2"
       (hide 11)
       (expand "del_vert")
       (expand "remove")
       (expand "member")
       (split +)
       (("1"
         (expand "verts_of")
         (inst? +)
         (expand "finseq_appl")
         (assert))
        ("2" (inst - "length(p!1)-1" "1") (assert))
        ("3"
         (expand "walk?")
         (expand "finseq_appl")
         (flatten)
         (hide -3 -4)
         (expand "verts_in?")
         (inst?))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (lemma "path_from_l")
   (inst?)
   (expand "disjoint?")
   (flatten)
   (assert)
   (expand "path_from?")
   (flatten)
   (expand "from?")
   (flatten)
   (hide -3)
   (expand "path?")
   (flatten)
   (hide -6)
   (expand "walk?")
   (expand "finseq_appl")
   (flatten)
   (hide -5)
   (inst - "length(p!1) -2")
   (assert)
   (expand "edge?")
   (replace -7)
   (flatten)
   (case-replace "length(p!1) = 2")
   (("1"
     (assert)
     (replace -4)
     (hide -2 -4)
     (expand "meng")
     (expand "union")
     (expand "incident")
     (expand "add")
     (expand "member")
     (replace -5)
     (split -4)
     (("1"
       (case "dbl[T](w1!1, t!1)(s!1) = dbl[T](s!1, t!1)(s!1)")
       (("1" (hide -2) (expand "dbl") (propax)) ("2" (assert))))
      ("2"
       (case "dbl[T](w2!1, t!1)(s!1) = dbl[T](s!1, t!1)(s!1)")
       (("1" (hide -2) (expand "dbl") (propax)) ("2" (assert))))
      ("3"
       (typepred "H(G!1, s!1, w1!1, w2!1)")
       (hide -1)
       (expand "subgraph?")
       (flatten)
       (hide -1)
       (expand "subset?")
       (expand "member")
       (inst?)
       (assert)
       (hide -2)
       (expand "separable?")
       (expand "edge?")
       (propax))
      ("4" (skosimp*) (expand "separable?") (expand "edge?") (propax))
      ("5" (skosimp*) (expand "separable?") (expand "edge?") (propax))))
    ("2"
     (assert)
     (replace -3)
     (hide -3)
     (hide -2)
     (expand "separates")
     (flatten)
     (expand "meng")
     (expand "union")
     (expand "add")
     (expand "member")
     (expand "incident")
     (split -2)
     (("1"
       (case "dbl[T](w1!1, t!1)(w1!1) = dbl[T](seq(p!1)(length(p!1) - 2), t!1)(w1!1)")
       (("1" (hide -2) (expand "dbl") (assert)) ("2" (assert))))
      ("2"
       (case "dbl[T](w2!1, t!1)(w2!1) = dbl[T](seq(p!1)(length(p!1) - 2), t!1)(w2!1)")
       (("1" (hide -2) (expand "dbl") (assert)) ("2" (assert))))
      ("3"
       (expand "H")
       (expand "path_comp")
       (expand "subgraph")
       (flatten)
       (expand "del_vert")
       (flatten)
       (inst - "seq(p!1)(length(p!1) - 2)")
       (expand "dbl")
       (expand "path_verts")
       (skosimp*)
       (expand "walk_from?")
       (flatten)
       (inst + "add1(w!1,t!1)")
       (expand "add1")
       (assert)
       (expand "del_verts")
       (expand "walk?")
       (expand "finseq_appl")
       (split +)
       (("1"
         (expand "verts_in?")
         (skosimp*)
         (expand "difference")
         (expand "member")
         (expand "remove")
         (expand "member")
         (inst?)
         (("1"
           (flatten)
           (split 1)
           (("1" (flatten) (assert))
            ("2" (flatten) (reveal -8) (expand "in?") (flatten))))
          ("2" (assert) (reveal -8) (expand "in?") (propax))))
        ("2"
         (skosimp*)
         (expand "edge?")
         (assert)
         (lift-if)
         (split 1)
         (("1"
           (flatten)
           (inst?)
           (assert)
           (flatten)
           (assert)
           (skosimp*)
           (expand "dbl")
           (flatten)
           (ground))
          ("2"
           (flatten)
           (case-replace "n!1 = length(w!1) - 1")
           (("1"
             (hide -6 -7)
             (assert)
             (replace -5)
             (replace -8 * rl)
             (expand "dbl")
             (assert)
             (skosimp*)
             (ground))
            ("2" (assert))))))))
      ("4"
       (skosimp*)
       (replace -2)
       (case "dbl[T](seq(p!1)(length(p!1) - 2), t!1)(z!1) = dbl[T](w1!1, z!1)(z!1) AND dbl[T](seq(p!1)(length(p!1) - 2), t!1)(w1!1) = dbl[T](w1!1, z!1)(w1!1)")
       (("1" (hide -2) (flatten) (expand "dbl") (ground))
        ("2" (assert))))
      ("5"
       (skosimp*)
       (hide -1)
       (case "dbl[T](seq(p!1)(length(p!1) - 2), t!1)(w2!1) = dbl[T](w2!1, z!1)(w2!1) AND dbl[T](seq(p!1)(length(p!1) - 2), t!1)(z!1) = dbl[T](w2!1, z!1)(z!1)")
       (("1" (flatten) (hide -3) (expand "dbl") (ground))
        ("2" (assert))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "disjoint?")
   (flatten)
   (expand "H")
   (expand "path_comp")
   (expand "subgraph")
   (flatten)
   (expand "path_verts")
   (skosimp*)
   (expand "separates")
   (flatten)
   (lemma "walk_merge")
   (inst?)
   (inst -1 "w!2" "s!1")
   (assert)
   (skosimp*)
   (inst + "p!1")
   (assert)
   (rewrite "del_verts_eq"))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "in?")
   (expand "disjoint?")
   (flatten)
   (case "subset?(vert(meng(G!1, s!1, t!1, w1!1, w2!1)),vert(G!1))")
   (("1"
     (lemma "card_subset[T]")
     (inst?)
     (("1"
       (assert)
       (expand "size")
       (hide -2)
       (lemma "line17_prep")
       (inst?)
       (assert)
       (inst?)
       (expand "disjoint?")
       (case "NOT vert(meng(G!1, s!1, t!1, w1!1, w2!1))(yt!1)")
       (("1"
         (name-replace "Mt" "vert(meng(G!1, s!1, t!1, w1!1, w2!1))")
         (case "vert(G!1)(yt!1)")
         (("1"
           (hide -3 2)
           (lemma "same_card_subset[T]")
           (inst -1 "Mt" "vert(G!1)")
           (assert)
           (reveal -6 -3)
           (assert))
          ("2"
           (hide -1 2 3 11)
           (expand "H")
           (expand "path_comp")
           (expand "subgraph")
           (flatten)
           (expand "del_vert")
           (hide -2)
           (expand "remove")
           (expand "member")
           (flatten))))
        ("2"
         (lemma "separates_comm")
         (inst?)
         (assert)
         (hide -1 -3 9)
         (expand "meng")
         (expand "add")
         (expand "member")
         (hide 1)
         (expand "H")
         (expand "path_comp")
         (expand "subgraph")
         (flatten)
         (hide -3)
         (expand "del_vert")
         (expand "remove")
         (expand "member")
         (flatten)
         (assert))))
      ("2" (assert)) ("3" (assert))))
    ("2"
     (lemma "vert_meng_sub")
     (inst?)
     (expand "in?")
     (expand "disjoint?")
     (assert))
    ("3" (assert)) ("4" (assert)) ("5" (propax)) ("6" (propax))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (split +)
   (("1"
     (expand "separable?")
     (flatten)
     (assert)
     (expand "meng")
     (expand "edge?")
     (expand "add")
     (expand "member")
     (expand "union")
     (expand "member")
     (split -1)
     (("1"
       (lemma "dbl_eq")
       (inst?)
       (assert)
       (expand "disjoint?")
       (propax))
      ("2"
       (lemma "dbl_eq")
       (inst?)
       (assert)
       (expand "disjoint?")
       (propax))
      ("3"
       (expand "disjoint?")
       (flatten)
       (expand "H")
       (expand "path_comp")
       (expand "subgraph")
       (expand "del_vert")
       (flatten))
      ("4" (expand "incident") (skosimp*))
      ("5" (expand "incident") (skosimp*))))
    ("2" (lemma "line14") (inst?) (assert))
    ("3"
     (expand "meng")
     (expand "add")
     (expand "member")
     (assert)
     (expand "in?")
     (expand "disjoint?")
     (flatten)
     (assert)
     (expand "H")
     (expand "path_comp")
     (expand "subgraph")
     (expand "del_vert")
     (expand "remove")
     (expand "member")
     (expand "path_verts")
     (inst + "gen_seq1(G!1,s!1)")
     (expand "walk_from?")
     (expand "gen_seq1")
     (expand "walk?")
     (expand "verts_in?")
     (propax))
    ("4" (expand "meng") (expand "add") (propax))))


proof_type: t_proof
decl_type: tcc
library: graphs
theory: meng_scaff
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (typepred "ps!1")
   (skosimp*)
   (expand "nonempty?")
   (expand "empty?")
   (expand "member")
   (inst?)
   (assert))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_prelude
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (case "EXISTS (yt: T): vert(path_comp(del_vert(
                               del_vert(G!1,w1!1),w2!1),t!1))(yt) AND yt /= t!1")
   (("1"
     (hide 1)
     (skosimp*)
     (case "size(MM!1) < size(G!1)")
     (("1"
       (expand "induction_step")
       (inst - "MM!1")
       (assert)
       (inst - "s!1" "t!1")
       (assert)
       (case "separable?(MM!1, s!1, t!1)
                          AND sep_num(MM!1, s!1, t!1) = 2
                          AND vert(MM!1)(s!1) AND vert(MM!1)(t!1)")
       (("1"
         (flatten)
         (assert)
         (skosimp*)
         (hide -1 -2 -3 -4 -5 -9 -10)
         (lemma "line19")
         (inst?)
         (inst-cp -1 "p1!1")
         (inst -1 "p2!1")
         (assert)
         (flatten)
         (split -2)
         (("1"
           (assert)
           (case "seq(p1!1)(length(p1!1) - 2) = w2!1")
           (("1"
             (assert)
             (hide -5 1)
             (inst 1 "p2!1" "p1!1")
             (assert)
             (lemma "independent?_comm")
             (inst - "p1!1" "p2!1")
             (assert)
             (hide -1 -4 -5 -6 -7)
             (expand "independent?")
             (expand "verts_of")
             (split 1)
             (("1"
               (skosimp*)
               (expand "finseq_appl")
               (inst - "length(p1!1)-2" "i!1")
               (assert)
               (typepred "i!1")
               (expand "path_from?")
               (flatten)
               (expand "disjoint?")
               (flatten)
               (expand "from?")
               (flatten)
               (assert))
              ("2"
               (skosimp*)
               (expand "finseq_appl")
               (inst - "i!1" "length(p2!1)-2")
               (assert)
               (expand "path_from?")
               (expand "disjoint?")
               (flatten)
               (expand "from?")
               (flatten)
               (assert))))
            ("2"
             (hide -5 -6 2 3)
             (expand "independent?")
             (inst - "length(p1!1)-2" "length(p2!1)-2")
             (assert))))
          ("2"
           (assert)
           (hide -5 -6 1)
           (inst 1 "p1!1" "p2!1")
           (assert)
           (split -4)
           (("1"
             (assert)
             (expand "verts_of")
             (split 1)
             (("1"
               (skosimp*)
               (expand "finseq_appl")
               (expand "independent?")
               (inst - "i!1" "length(p2!1)-2")
               (expand "disjoint?")
               (expand "path_from?")
               (flatten)
               (expand "from?")
               (flatten)
               (assert))
              ("2"
               (skosimp*)
               (expand "finseq_appl")
               (expand "independent?")
               (inst - "length(p1!1)-2" "i!1")
               (assert)
               (expand "disjoint?")
               (expand "path_from?")
               (expand "from?")
               (flatten)
               (assert))))
            ("2"
             (expand "independent?")
             (inst - "length(p1!1)-2" "length(p2!1)-2")
             (assert))))))
        ("2" (lemma "pre20") (inst?) (assert) (flatten) (assert))))
      ("2"
       (hide 3)
       (hide -2 -4 -8)
       (lemma "line17")
       (inst?)
       (expand "H")
       (inst?)
       (assert))))
    ("2"
     (hide 3)
     (lemma "line15ab")
     (inst -1 "G!1" "t!1" "s!1" "w1!1" "w2!1")
     (rewrite "separable?_comm")
     (rewrite "dbl_comm")
     (rewrite "sep_num_comm")
     (("1"
       (assert)
       (split -1)
       (("1"
         (flatten)
         (skosimp*)
         (case-replace "edge?(G!1)(w1!1, t!1)")
         (("1"
           (assert)
           (lemma "line16")
           (assert)
           (inst - "G!1" "s!1" "t!1" "w2!1" "w1!1")
           (assert)
           (expand "disjoint?")
           (flatten)
           (expand "in?")
           (flatten)
           (assert)
           (skosimp*)
           (inst 2 "yt!1")
           (expand "H")
           (rewrite "del_vert_comm")
           (assert))
          ("2"
           (assert)
           (lemma "line16")
           (inst - "G!1" "s!1" "t!1" "w1!1" "w2!1")
           (assert)
           (rewrite "dbl_comm")
           (assert)
           (expand "in?")
           (flatten)
           (assert)
           (skosimp*)
           (inst 3 "yt!1")
           (expand "H")
           (assert))))
        ("2" (expand "in?") (flatten) (assert))
        ("3"
         (assert)
         (rewrite "dbl_comm")
         (hide 2 3)
         (lemma "separates_comm")
         (inst?)
         (assert))))
      ("2" (expand "in?") (propax)) ("3" (expand "in?") (propax))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_prelude
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "path_from?")
   (flatten)
   (expand "from?")
   (flatten)
   (expand "path?")
   (flatten)
   (expand "finseq_appl")
   (inst - "i!1" "length(p!1) - 1")
   (assert))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_prelude
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "path_H_W")
   (inst?)
   (assert)
   (flatten)
   (expand "path?")
   (flatten)
   (hide -2)
   (expand "H")
   (expand "walk?")
   (flatten)
   (split +)
   (("1"
     (hide -2)
     (expand "verts_in?")
     (skosimp*)
     (expand "del_verts")
     (expand "difference")
     (expand "member")
     (expand "dbl")
     (expand* "^" min empty_seq)
     (inst?)
     (("1"
       (expand "path_comp")
       (expand "subgraph")
       (flatten)
       (hide -2)
       (expand "del_vert")
       (expand "remove")
       (expand "member")
       (assert)
       (flatten)
       (assert))
      ("2" (typepred "i!1") (expand* "^" min empty_seq) (assert))))
    ("2"
     (skosimp*)
     (hide -2)
     (expand "finseq_appl")
     (expand* "^" min empty_seq)
     (expand "edge?")
     (inst?)
     (assert)
     (flatten)
     (assert)
     (expand "del_verts")
     (split 1)
     (("1"
       (expand "path_comp")
       (expand "subgraph")
       (flatten)
       (expand "del_vert")
       (flatten))
      ("2"
       (skosimp*)
       (expand "dbl")
       (split -1)
       (("1"
         (expand "verts_of")
         (expand "finseq_appl")
         (replace -1)
         (hide -1)
         (split -1)
         (("1" (hide -3) (inst?) (assert)) ("2" (inst?) (assert))))
        ("2"
         (replace -1)
         (hide -1)
         (expand "verts_of")
         (expand "finseq_appl")
         (hide 1)
         (split -1)
         (("1" (inst?) (assert)) ("2" (inst?) (assert))))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_prelude
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (auto-rewrite finseq_appl)
   (expand "independent?")
   (skosimp*)
   (expand "separates")
   (flatten)
   (case "walk_from?[T](del_verts[T](G!1, dbl[T](w1!1, w2!1)),
                                    p1!1^(0,i!1), s!1, seq(p1!1)(i!1))")
   (("1"
     (case "walk_from?[T](del_verts[T](G!1, dbl[T](w1!1, w2!1)),
                                        p2!1^(0,j!1), t!1, seq(p2!1)(j!1))")
     (("1"
       (name-replace "DV" "del_verts(G!1, dbl(w1!1, w2!1))")
       (inst +
        "join2(DV,s!1,t!1,seq(p2!1)(j!1),p1!1^(0,i!1),p2!1^(0,j!1))")
       (("1" (assert))
        ("2" (assert) (expand* "^" min empty_seq) (assert))))
      ("2"
       (hide -1 4)
       (expand "walk_from?")
       (split 1)
       (("1" (expand* "^" min empty_seq))
        ("2" (expand* "^" min empty_seq) (assert))
        ("3"
         (lemma "path_H_def")
         (inst -1 "G!1" "j!1" "trunc1(p2!1)" "t!1" "w1!1" "w2!1")
         (assert)
         (expand "trunc1" -1)
         (expand* "^" min empty_seq)
         (assert)
         (hide-all-but (-1 1))
         (grind))))
      ("3" (expand "^" 1) (expand min 1) (assert))))
    ("2"
     (expand "walk_from?")
     (split 1)
     (("1" (expand "^" 1) (propax))
      ("2" (expand* "^" min empty_seq) (assert))
      ("3"
       (lemma "path_H_def")
       (inst -1 "G!1" "i!1" "trunc1(p1!1)" "s!1" "w1!1" "w2!1")
       (assert)
       (expand "trunc1")
       (expand* "^" min empty_seq)
       (hide-all-but (-1 1))
       (grind))))
    ("3" (expand* "^" min empty_seq) (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_prelude
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "path_H_ind")
   (inst?)
   (("1"
     (inst -1 "trunc1(p2!1)" "t!1")
     (("1"
       (assert)
       (hide -3 -4 -5 2)
       (expand "trunc1")
       (expand* "^" min empty_seq)
       (propax))
      ("2" (assert))))
    ("2" (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_prelude
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (lemma "path_comp_in")
   (inst?)
   (assert)
   (lemma "path_H_W")
   (inst?)
   (assert)
   (flatten)
   (expand "path_from?")
   (hide -3)
   (expand "path?")
   (expand "finseq_appl")
   (flatten)
   (split +)
   (("1"
     (expand "walk?")
     (expand "finseq_appl")
     (split +)
     (("1"
       (flatten)
       (expand "verts_in?")
       (skosimp*)
       (hide -2 -3)
       (inst?)
       (("1" (expand "trunc1") (expand "^") (propax))
        ("2"
         (expand "trunc1")
         (expand* "^" "min" "empty_seq")
         (typepred "i!1")
         (case-replace "i!1 = length(p!1) - 1")
         (("1"
           (hide -1 -2 -3 1)
           (typepred "G!1")
           (expand "edge?")
           (flatten)
           (inst?)
           (assert)
           (inst?)
           (expand "dbl")
           (propax))
          ("2" (assert))))))
      ("2"
       (flatten)
       (skosimp*)
       (hide -4)
       (inst -3 "n!1")
       (assert)
       (expand "trunc1")
       (expand* "^" "min")
       (assert))))
    ("2"
     (skosimp*)
     (inst - "i!1" "j!1")
     (("1" (assert) (hide -2) (expand "trunc1") (expand "^") (propax))
      ("2"
       (expand "trunc1")
       (expand* "^" "min")
       (assert)
       (hide -2)
       (typepred "j!1")
       (case-replace "j!1 = length(p!1) - 1")
       (("1"
         (expand "from?")
         (flatten)
         (replace -6)
         (expand "verts_of")
         (expand "finseq_appl")
         (inst?))
        ("2"
         (expand "from?")
         (flatten)
         (hide 4)
         (expand "verts_of")
         (expand "finseq_appl")
         (inst?)
         (assert))))
      ("3"
       (expand "trunc1")
       (expand* "^" "min")
       (assert)
       (case "i!1 = length(p!1) - 1")
       (("1"
         (replace -1)
         (expand "from?")
         (flatten)
         (replace -6)
         (expand "verts_of")
         (expand "finseq_appl")
         (inst 3 "j!1")
         (assert))
        ("2" (assert))))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_prelude
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (lemma "path_meng_t")
   (inst?)
   (("1"
     (assert)
     (assert)
     (hide -1)
     (expand "path_from?")
     (flatten)
     (hide -7 -8)
     (expand "path?")
     (flatten)
     (hide -7)
     (expand "walk?")
     (flatten)
     (expand "finseq_appl")
     (inst?)
     (assert)
     (hide -6)
     (expand "edge?")
     (flatten)
     (assert)
     (expand "meng")
     (expand "union")
     (expand "add")
     (expand "member")
     (split -)
     (("1"
       (assert)
       (lemma "dbl_eq")
       (inst?)
       (assert)
       (hide -2)
       (reveal -7)
       (split -)
       (("1" (flatten) (hide -1) (inst?) (assert))
        ("2" (flatten) (hide -1) (inst?) (assert))))
      ("2"
       (lemma "dbl_eq")
       (inst?)
       (assert)
       (hide -2)
       (reveal -7)
       (split -)
       (("1" (flatten) (hide -1) (inst?) (assert))
        ("2" (flatten) (hide -1) (inst?) (assert))))
      ("3"
       (expand "H")
       (expand "path_comp")
       (expand "subgraph")
       (flatten)
       (hide -2)
       (expand "del_vert")
       (propax))
      ("4" (expand "incident") (assert) (skosimp*))
      ("5" (assert) (expand "incident") (skosimp*))))
    ("2" (assert)) ("3" (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_prelude
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (expand "path_from?")
   (flatten)
   (expand "from?")
   (flatten)
   (expand "independent?")
   (split +)
   (("1"
     (expand "verts_of")
     (expand "finseq_appl")
     (skosimp*)
     (inst - "i!1" "length(p2!1) - 2")
     (("1" (assert)) ("2" (assert))))
    ("2"
     (expand "verts_of")
     (skosimp*)
     (expand "finseq_appl")
     (inst - "length(p1!1) - 2" "i!1")
     (("1" (assert)) ("2" (assert))))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_prelude
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (expand "path?")
   (flatten)
   (split +)
   (("1"
     (expand "walk?")
     (flatten)
     (split +)
     (("1"
       (expand "verts_in?")
       (skosimp*)
       (typepred "i!1")
       (expand "trunc1")
       (expand* "^" min empty_seq)
       (assert)
       (hide -8)
       (expand "finseq_appl")
       (inst?)
       (expand "meng")
       (expand "add")
       (expand "member")
       (split -7)
       (("1"
         (expand "from?")
         (flatten)
         (inst - "i!1" "length(p!1) - 1")
         (assert))
        ("2"
         (split -10)
         (("1" (flatten) (inst - "i!1" "length(p!1) - 2") (assert))
          ("2"
           (flatten)
           (expand "verts_of")
           (expand "finseq_appl")
           (inst + "i!1")
           (assert))))
        ("3"
         (split -10)
         (("1"
           (flatten)
           (expand "verts_of")
           (inst + "i!1")
           (expand "finseq_appl")
           (assert))
          ("2" (flatten) (inst - "i!1" "length(p!1) - 2") (assert))))))
      ("2"
       (expand "finseq_appl")
       (expand "trunc1")
       (skosimp*)
       (expand* "^" min empty_seq)
       (assert)
       (inst?)
       (assert)
       (hide -7)
       (expand "meng")
       (expand "edge?")
       (flatten)
       (assert)
       (expand "union")
       (expand "add")
       (expand "member")
       (split -7)
       (("1"
         (lemma "dbl_eq")
         (inst?)
         (assert)
         (hide -2)
         (split -1)
         (("1"
           (flatten)
           (expand "from?")
           (flatten)
           (inst - "1 + n!1" "length(p!1) - 1")
           (assert))
          ("2"
           (flatten)
           (inst - "n!1" "length(p!1) - 1")
           (assert)
           (expand "from?")
           (propax))))
        ("2"
         (expand "from?")
         (flatten)
         (lemma "dbl_eq")
         (inst?)
         (assert)
         (hide -2)
         (split -1)
         (("1" (flatten) (inst - "1 + n!1" "length(p!1) - 1") (assert))
          ("2" (flatten) (inst - "n!1" "length(p!1) - 1") (assert))))
        ("3"
         (expand "incident")
         (skosimp*)
         (hide -1)
         (lemma "dbl_eq")
         (inst?)
         (assert)
         (hide -2)
         (split -1)
         (("1"
           (flatten)
           (split -12)
           (("1" (flatten) (inst - "n!1" "length(p!1) - 2") (assert))
            ("2"
             (flatten)
             (expand "verts_of")
             (inst + "n!1")
             (expand "finseq_appl")
             (propax))))
          ("2"
           (flatten)
           (split -12)
           (("1" (flatten) (inst - "1 + n!1" "length(p!1) - 2") (assert))
            ("2"
             (flatten)
             (expand "verts_of")
             (inst + "1 + n!1")
             (expand "finseq_appl")
             (propax))))))
        ("4"
         (expand "incident")
         (skosimp*)
         (hide -1)
         (lemma "dbl_eq")
         (inst?)
         (assert)
         (hide -2)
         (expand "from?")
         (flatten)
         (ground)
         (("1" (expand "verts_of") (expand "finseq_appl") (inst + "n!1"))
          ("2" (inst - "n!1" "length(p!1) - 2") (assert))
          ("3"
           (expand "verts_of")
           (expand "finseq_appl")
           (inst + "1 + n!1"))
          ("4" (inst - "1 + n!1" "length(p!1) - 2") (assert))))))))
    ("2"
     (skosimp*)
     (expand "finseq_appl")
     (typepred "i!1")
     (typepred "j!1")
     (hide -9 -11 -12)
     (expand "trunc1")
     (expand* "^" min empty_seq)
     (assert)
     (inst - "i!1" "j!1")
     (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_prelude
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (auto-rewrite finseq_appl)
   (lemma "path_from_l")
   (inst?)
   (assert)
   (lemma "path_from_l")
   (inst -1 "G!1" "p2!1" "t!1" "v!1")
   (assert)
   (expand "path_from?")
   (flatten)
   (split +)
   (("1"
     (expand "join2")
     (expand "path?")
     (flatten)
     (split +)
     (("1"
       (hide -4 -7)
       (expand "walk?")
       (flatten)
       (split +)
       (("1"
         (hide -4 -7)
         (expand "verts_in?")
         (skosimp*)
         (typepred "i!1")
         (expand "o ")
         (expand "rev")
         (expand* "^" min empty_seq)
         (ground)
         (("1" (inst?)) ("2" (inst? -6))))
        ("2"
         (skosimp*)
         (hide -4 -7 -10)
         (expand "from?")
         (flatten)
         (expand "o ")
         (expand "rev")
         (expand* "^" min empty_seq)
         (expand "edge?")
         (case "n!1 < length(p1!1) - 1")
         (("1"
           (assert)
           (inst?)
           (assert)
           (flatten)
           (assert)
           (split 1)
           (("1" (lift-if) (assert)) ("2" (assert) (lift-if) (assert))))
          ("2"
           (assert)
           (inst -7 "length(p1!1) + length(p2!1) - 3 - n!1")
           (assert)
           (flatten)
           (assert)
           (rewrite "dbl_comm"))))))
      ("2"
       (skosimp*)
       (hide -4 -7)
       (expand "o ")
       (expand* "^" min empty_seq)
       (assert)
       (expand "rev")
       (lift-if)
       (lift-if)
       (ground)
       (("1" (inst -6 "i!1" "j!1") (assert))
        ("2"
         (typepred "j!1")
         (expand* "^" min empty_seq)
         (expand "o ")
         (expand "rev")
         (assert)
         (expand "disjoint?")
         (expand "trunc1")
         (expand* "^" min empty_seq)
         (case "j!1 = length(p1!1) - 1")
         (("1"
           (replace -1)
           (hide -1)
           (assert)
           (expand "from?")
           (flatten)
           (replace -11)
           (replace -8 * rl)
           (inst?)
           (assert))
          ("2"
           (hide -6 -8)
           (inst -8 "i!1" "length(p1!1) + length(p2!1) - 2 - j!1")
           (assert))))
        ("3"
         (lift-if)
         (prop)
         (("1"
           (typepred "i!1")
           (expand "o ")
           (expand "rev")
           (expand* "^" min empty_seq)
           (hide -6 -8)
           (expand "disjoint?")
           (expand "trunc1")
           (expand* "^" min empty_seq)
           (case "i!1 = length(p1!1) - 1")
           (("1"
             (replace -1)
             (hide -1)
             (assert)
             (expand "from?")
             (flatten)
             (replace -9)
             (replace -7 * rl)
             (reveal -2)
             (inst?)
             (assert))
            ("2"
             (inst -8 "j!1" "length(p1!1) + length(p2!1) - 2 - i!1")
             (("1" (assert)) ("2" (assert))))))
          ("2"
           (inst -6 "length(p1!1) + length(p2!1) - 2 - i!1"
            "length(p1!1) + length(p2!1) - 2 - j!1")
           (("1" (assert))
            ("2" (typepred j!1) (expand* o ^ min empty_seq rev) (assert))
            ("3"
             (typepred i!1)
             (expand* o ^ min empty_seq rev)
             (assert))))))))))
    ("2"
     (expand "from?")
     (expand "join2")
     (expand "o ")
     (flatten)
     (expand* "^" min empty_seq)
     (expand "rev")
     (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_prelude
signature: nil
run_date: Unknown date
run_time: ----
status: proved-complete
description: nil
script:
  (""
   (skosimp*)
   (expand "path_from?")
   (expand "walk_from?")
   (expand "from?")
   (expand "path?")
   (flatten)
   (assert))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_prelude
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (expand "disjoint?")
   (skosimp*)
   (expand "separates")
   (flatten)
   (case "walk_from?[T](del_verts[T](G!1, dbl[T](w1!1, w2!1)),
                                    p1!1^(0,i!1), s!1, seq(p1!1)(i!1))")
   (("1"
     (case "walk_from?[T](del_verts[T](G!1, dbl[T](w1!1, w2!1)),
                                        p2!1^(0,j!1), t!1, seq(p2!1)(j!1))")
     (("1"
       (hide -3 -4)
       (name-replace "DV" "del_verts(G!1, dbl(w1!1, w2!1))")
       (case-replace "i!1 = 0")
       (("1"
         (replace -4)
         (replace -8 * rl)
         (inst + "rev(p2!1 ^ (0, j!1))")
         (("1"
           (hide -3)
           (expand "walk_from?")
           (flatten)
           (lemma "walk?_rev")
           (inst -1 "DV" "p2!1 ^ (0, j!1)")
           (assert)
           (expand "^" +)
           (expand "min" +)
           (expand "rev")
           (propax))
          ("2" (expand "^" 1) (expand "min" 1) (expand "rev") (assert))))
        ("2"
         (inst +
          "join2(DV,s!1,t!1,seq(p2!1)(j!1),p1!1^(0,i!1),p2!1^(0,j!1))")
         (("1"
           (typepred
            "join2(DV, s!1, t!1, seq(p2!1)(j!1),
                                             p1!1 ^ (0, i!1), p2!1 ^ (0, j!1))")
           (propax))
          ("2" (assert) (expand "^" 1) (expand "min" 1) (assert))))))
      ("2"
       (hide -1 4)
       (expand "walk_from?")
       (split 1)
       (("1" (expand* "^" min empty_seq))
        ("2" (expand* "^" min empty_seq) (assert))
        ("3"
         (lemma "path_H_def")
         (inst -1 "G!1" "j!1" "p2!1" "t!1" "w1!1" "w2!1")
         (assert))))
      ("3" (expand "^" 1) (expand "min" 1) (assert))))
    ("2"
     (hide -1 4)
     (lemma "path_H_def")
     (inst -1 "G!1" "i!1" "p1!1" "s!1" "w1!1" "w2!1")
     (assert)
     (expand "walk_from?")
     (expand "^" 1)
     (expand "min" 1)
     (propax))
    ("3" (expand "^" 1) (expand "min" 1) (assert))))


proof_type: f_proof
decl_type: formula
library: graphs
theory: meng_scaff_prelude
signature: nil
run_date: Unknown date
run_time: ----
status: proved-incomplete
description: nil
script:
  (""
   (skosimp*)
   (expand "in?")
   (expand "disjoint?")
   (flatten)
   (lemma "line20")
   (inst -1 "G!1" "meng(G!1, s!1, t!1, w1!1, w2!1)" "s!1" "t!1" "w1!1"
    "w2!1")
   (("1"
     (assert)
     (expand "in?")
     (expand "disjoint?")
     (split -1)
     (("1"
       (skosimp*)
       (hide 1 2)
       (lemma "line20")
       (inst -1 "G!1" "meng(G!1, t!1, s!1, w1!1, w2!1)" "t!1" "s!1"
        "w1!1" "w2!1")
       (assert)
       (rewrite "separable?_comm")
       (expand "in?")
       (expand "disjoint?")
       (rewrite "sep_num_comm")
       (assert)
       (rewrite "separates_comm")
       (split -1)
       (("1"
         (skosimp*)
         (hide 1 2)
         (hide -15 -16 -17 -18 7 8)
         (name "HS" "H(G!1, s!1, w1!1, w2!1)")
         (name "HT" "H(G!1, t!1, w1!1, w2!1)")
         (case "path?(HS,trunc1(trunc1(P1!1))) AND from?(trunc1(P1!1),s!1,w1!1)")
         (("1"
           (case "path?(HS,trunc1(trunc1(P2!1))) AND from?(trunc1(P2!1),s!1,w2!1)")
           (("1"
             (case "path?(HT,trunc1(trunc1(P1!2))) AND from?(trunc1(P1!2),t!1,w1!1)")
             (("1"
               (case "path?(HT,trunc1(trunc1(P2!2))) AND from?(trunc1(P2!2),t!1,w2!1)")
               (("1"
                 (flatten)
                 (case "path_from?[T](G!1, trunc1(P1!1), s!1, w1!1) AND
                                                         path_from?[T](G!1, trunc1(P1!2), t!1, w1!1)")
                 (("1"
                   (flatten)
                   (name "Rw1"
                         "join2(G!1,s!1,t!1,w1!1,trunc1(P1!1),trunc1(P1!2))")
                   (("1"
                     (case "disjoint?(trunc1(trunc1(P1!1)),trunc1(trunc1(P1!2)))")
                     (("1"
                       (lemma "join2_lem")
                       (inst?)
                       (assert)
                       (replace -3)
                       (case "path_from?[T](G!1, trunc1(P2!1), s!1, w2!1) AND
                                                                     path_from?[T](G!1, trunc1(P2!2), t!1, w2!1)")
                       (("1"
                         (flatten)
                         (case "disjoint?(trunc1(trunc1(P2!1)),trunc1(trunc1(P2!2)))")
                         (("1"
                           (lemma "join2_lem")
                           (inst -1 "G!1" "trunc1(P2!1)" "trunc1(P2!2)"
                            "s!1" "t!1" "w2!1")
                           (assert)
                           (name "Rw2"
                                 "join2(G!1,s!1,t!1,w2!1,trunc1(P2!1),trunc1(P2!2))")
                           (replace -1)
                           (hide -11 -12 -13 -14 -15 -16 -17 -18 -19 -20
                            -21 -22 -23 -24 -25 -26 -28 -30)
                           (case "independent?(Rw1,Rw2)")
                           (("1"
                             (case "Rw1 /= Rw2")
                             (("1"
                               (assert)
                               (flatten)
                               (expand "path_from?")
                               (flatten)
                               (assert)
                               (hide -2 -3 -4 -5 -6 -7 -8 -9 -10)
                               (hide -2 -3 -4 -5 -8 -9 -10)
                               (lemma "independent?_comm")
                               (inst -1 "Rw1" "Rw2")
                               (assert)
                               (reveal -10 -11 -15 -16)
                               (inst 8 "Rw1" "Rw2")
                               (assert))
                              ("2"
                               (lemma "independent_ne")
                               (inst?)
                               (case "independent?(Rw1, Rw2)")
                               (("1"
                                 (assert)
                                 (replace -10 * rl)
                                 (expand "join2" 1)
                                 (expand "o ")
                                 (expand "trunc1" 1)
                                 (expand* "^" "min")
                                 (expand "rev")
                                 (assert))
                                ("2" (propax))))))
                            ("2"
                             (hide -4 -5 -9 -10 8)
                             (replace -1 * rl)
                             (hide -1)
                             (replace -5 * rl)
                             (hide -5)
                             (hide -1 -2 -3 -4)
                             (reveal -11 -12 -13 -14 -15 -16 -17 -18)
                             (lemma "path_comps_ind3")
                             (inst -1 "G!1" "P1!1" "P2!2" "s!1" "t!1"
                              "w1!1" "w2!1")
                             (assert)
                             (split -1)
                             (("1"
                               (lemma "path_comps_ind3")
                               (inst -1 "G!1" "P2!1" "P1!2" "s!1" "t!1"
                                "w1!1" "w2!1")
                               (assert)
                               (split -1)
                               (("1"
                                 (hide -3 -4 -5 -6 -7 -8 -9 -10)
                                 (expand "independent?" 1)
                                 (skosimp*)
                                 (expand "join2")
                                 (rewrite "l_trunc1")
                                 (rewrite "l_trunc1")
                                 (expand* "^" "min")
                                 (assert)
                                 (expand "o ")
                                 (expand "rev")
                                 (rewrite "l_trunc1")
                                 (rewrite "l_trunc1")
                                 (lift-if)
                                 (lift-if)
                                 (ground)
                                 (("1"
                                   (expand "independent?" -14)
                                   (inst - "i!1" "j!1")
                                   (assert)
                                   (hide -4 -5)
                                   (expand "trunc1")
                                   (expand* "^" "min")
                                   (assert))
                                  ("2"
                                   (case "j!1 < length(P2!1) - 2")
                                   (("1"
                                     (assert)
                                     (expand "independent?" -5)
                                     (inst
                                      -
                                      "j!1"
                                      "length(P1!1) + length(P1!2) - 4 - i!1")
                                     (rewrite "l_trunc1")
                                     (rewrite "l_trunc1")
                                     (assert)
                                     (case "i!1 = length(P1!1) - 2")
                                     (("1"
                                       (replace -1)
                                       (hide -1)
                                       (assert)
                                       (hide -3)
                                       (expand "trunc1")
                                       (expand* "^" "min")
                                       (reveal -29 7)
                                       (replace -1)
                                       (hide -1)
                                       (expand "verts_of")
                                       (inst?)
                                       (expand "finseq_appl")
                                       (assert))
                                      ("2" (assert) (grind))))
                                    ("2"
                                     (lift-if)
                                     (prop)
                                     (("1" (grind))
                                      ("2"
                                       (assert)
                                       (hide -4 -5 -13)
                                       (expand "independent?")
                                       (expand "trunc1")
                                       (expand* "^" "min")
                                       (inst
                                        -
                                        "length(P1!1) + length(P1!2) - 4 - i!1"
                                        "length(P2!1) + length(P2!2) - 4 - j!1")
                                       (("1" (assert))
                                        ("2" (assert))))))))))
                                ("2"
                                 (expand "from?" -7)
                                 (flatten)
                                 (expand "trunc1" -7)
                                 (expand "^")
                                 (propax))
                                ("3"
                                 (expand "from?" -5)
                                 (flatten)
                                 (expand "trunc1" -5)
                                 (assert)
                                 (expand "^")
                                 (propax))))
                              ("2"
                               (expand "from?" -8)
                               (flatten)
                               (expand "trunc1" -8)
                               (expand "^")
                               (propax))
                              ("3"
                               (expand "from?" -2)
                               (flatten)
                               (expand "trunc1" -2)
                               (assert)
                               (expand "^")
                               (propax))))))
                          ("2"
                           (lemma "paths_H_disj")
                           (inst?)
                           (inst?)
                           (inst -1 "s!1")
                           (assert)
                           (hide -1 -2 -3 -4 -5 -6 -7 -8 2 9)
                           (hide -2 -3 -4 -6 -7 -8 -9 -10 -12 -17 -19
                            -23)
                           (expand "from?")
                           (expand "trunc1")
                           (expand* "^" "min" "empty_seq")
                           (assert))))
                        ("2"
                         (hide -1 -2 -3 -4 -5 -16 -18 -23 -25)
                         (hide -3 -4 -7 -8)
                         (replace -5 * rl)
                         (hide -5)
                         (replace -5 * rl)
                         (hide -5)
                         (lemma "path_comp_in")
                         (expand "path_from?")
                         (inst?)
                         (assert)
                         (lemma "path_H_trunc")
                         (expand "finseq_appl")
                         (split +)
                         (("1"
                           (inst -1 "G!1" "trunc1(P2!1)" "s!1" "t!1"
                            "w2!1" "w1!1")
                           (rewrite "H_comm" -1)
                           (assert)
                           (expand "path_from?")
                           (hide 1)
                           (reveal -16 -28)
                           (expand "trunc1" 1)
                           (expand* "^" "min" "empty_seq")
                           (lemma "meng_last")
                           (hide -2)
                           (reveal -17)
                           (inst?)
                           (assert))
                          ("2"
                           (inst -1 "G!1" "trunc1(P2!2)" "t!1" "s!1"
                            "w2!1" "w1!1")
                           (assert)
                           (rewrite "H_comm")
                           (assert)
                           (expand "path_from?")
                           (hide 1)
                           (expand "trunc1" 1)
                           (expand* "^" "min" "empty_seq")
                           (lemma "meng_last")
                           (reveal -15)
                           (inst?)
                           (assert))))))
                      ("2"
                       (lemma "paths_H_disj")
                       (inst?)
                       (inst?)
                       (inst -1 "s!1")
                       (assert)
                       (hide -1 -2 -3 -4 -5 -6 -8 -9 -10 -12 -13 2 9)
                       (hide -3 -5 -7 -8 -9 -10 -12 -14 -15 -16)
                       (expand "from?")
                       (expand "trunc1")
                       (flatten)
                       (expand* "^" "min" "empty_seq")
                       (assert))))
                    ("2" (rewrite "path_from_to_walk_from"))
                    ("3"
                     (rewrite "path_from_to_walk_from")
                     (assert)
                     (expand "trunc1" 1)
                     (expand* "^" "min" "empty_seq")
                     (assert))))
                  ("2"
                   (hide -24 -23 -21 -20 -17 -16)
                   (hide -14 -13 -1 -2 -5 -6 8)
                   (replace -5 * rl)
                   (hide -5)
                   (replace -5 * rl)
                   (hide -5)
                   (expand "path_from?")
                   (flatten)
                   (lemma "path_comp_in")
                   (split 1)
                   (("1"
                     (hide -2 -3)
                     (inst?)
                     (assert)
                     (lemma "path_H_trunc")
                     (expand "finseq_appl")
                     (inst?)
                     (inst?)
                     (assert)
                     (expand "path_from?")
                     (expand "trunc1" 1)
                     (expand* "^" "min" "empty_seq")
                     (lemma "meng_last")
                     (hide -2 -3 -4 -5 -6)
                     (inst?)
                     (inst?)
                     (expand "path_from?")
                     (propax))
                    ("2" (propax))
                    ("3"
                     (inst?)
                     (assert)
                     (lemma "path_H_trunc")
                     (expand "finseq_appl")
                     (inst?)
                     (inst?)
                     (expand "path_from?")
                     (expand "trunc1" 1)
                     (expand* "^" "min" "empty_seq")
                     (lemma "meng_last")
                     (hide -2 -3 -4 -5 -6)
                     (inst?)
                     (inst?)
                     (expand "path_from?")
                     (propax))
                    ("4" (propax))))))
                ("2"
                 (flatten)
                 (assert)
                 (replace -7 * rl)
                 (hide -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -13 -14 -15 -16 -17
                  -18)
                 (reveal -9 -11 -12 -13)
                 (lemma "ind_verts_w")
                 (inst -1 "meng(G!1, t!1, s!1, w1!1, w2!1)" "P1!2" "P2!2"
                  "t!1" "s!1" "w1!1" "w2!1")
                 (assert)
                 (flatten)
                 (hide -1 -4)
                 (lemma "path_meng_in")
                 (expand "path_from?")
                 (inst?)
                 (flatten)
                 (assert)
                 (expand "from?")
                 (flatten)
                 (expand "trunc1" +)
                 (expand* "^" "min" "empty_seq"))
                ("3" (assert))
                ("4"
                 (expand "trunc1" 1)
                 (expand* "^" "min" "empty_seq")
                 (assert))
                ("5" (assert))))
              ("2"
               (replace -3 * rl)
               (hide -1 -2 -3 -4 -7 -12 -14 8)
               (reveal -5)
               (lemma "ind_verts_w")
               (inst -1 "meng(G!1, t!1, s!1, w1!1, w2!1)" "P1!2" "P2!2"
                "t!1" "s!1" "w1!1" "w2!1")
               (assert)
               (flatten)
               (hide -1)
               (lemma "path_meng_in")
               (expand "path_from?")
               (flatten)
               (inst?)
               (assert)
               (hide -1 -2)
               (expand "from?")
               (expand "trunc1")
               (expand* "^" "min" "empty_seq")
               (flatten))
              ("3" (assert))
              ("4"
               (expand "trunc1" 1)
               (expand* "^" "min" "empty_seq")
               (assert))
              ("5" (assert))))
            ("2"
             (replace -3 * rl)
             (hide -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 8)
             (reveal -11)
             (lemma "ind_verts_w")
             (inst -1 "meng(G!1, s!1, t!1, w1!1, w2!1)" "P1!1" "P2!1"
              "s!1" "t!1" "w1!1" "w2!1")
             (assert)
             (flatten)
             (hide -1)
             (lemma "path_meng_in")
             (expand "path_from?")
             (flatten)
             (inst?)
             (assert)
             (expand "from?")
             (expand "trunc1" +)
             (expand* "^" "min" "empty_seq")
             (flatten))
            ("3"
             (expand "trunc1" 1)
             (expand* "^" "min" "empty_seq")
             (assert))))
          ("2"
           (replace -2 * rl)
           (hide -1 -2 -3 -4 -5 -6 -7 -8 -9 -13 8)
           (lemma "ind_verts_w")
           (inst -1 "meng(G!1, s!1, t!1, w1!1, w2!1)" "P1!1" "P2!1" "s!1"
            "t!1" "w1!1" "w2!1")
           (assert)
           (flatten)
           (lemma "path_meng_in")
           (expand "path_from?")
           (flatten)
           (inst?)
           (assert)
           (expand "from?")
           (expand "trunc1" +)
           (expand* "^" "min" "empty_seq")
           (flatten))
          ("3"
           (expand "trunc1" 1)
           (expand* "^" "min" "empty_seq")
           (assert))))
        ("2" (expand "induction_step") (propax)) ("3" (propax))))
      ("2" (propax))))
    ("2" (assert)) ("3" (assert))))


