Изображение:Pvs tree.png

Материал из eSyr's wiki.

Перейти к: навигация, поиск

Автор: Игорь Бронштейн.

Исходный dot-файл:

digraph PVSTree {
    "node0" [
        label = "{ |[1] FORALL (i : nat) : (i \> 7) IMPLIES EXIST (t : nat, f : nat) : i = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node1" [
        label = "(induct \"i\")"
    ]
    "node0" -> "node1"
    "node2" [
        label = "{ |[1] (0 \> 7) IMPLIES EXIST (t : nat, f : nat) : 0 = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node1" -> "node2" [label = "базис индукции"]
    "node3" [
        label = "(flatten 1)"
    ]
    "node2" -> "node3"
    "node4" [
        label = "{[-1] 0 \> 7|[1] EXIST (t : nat, f : nat) : 0 = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node3" -> "node4"
    "node7" [
        label = "(assert)"
        style = "filled"
        fillcolor = "green"
    ]
    "node4" -> "node7"
    "node8" [
        label = "{ |[1] FORALL (j : nat) :\n(j \> 7) IMPLIES EXIST (t : nat, f : nat) : j = 3 * t + 5 * f\nIMPLIES\n(j + 1 \> 7) IMPLIES EXIST (t : nat, f : nat) : j + 1 = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node1" -> "node8" [label = "индуктивный переход"]
    "node9" [
        label = "(skolem! 1)"
    ]
    "node8" -> "node9"
    "node10" [
        label = "{ |[1] (j!1 \> 7) IMPLIES EXIST (t : nat, f : nat) : j!1 = 3 * t + 5 * f\nIMPLIES\n(j!1 + 1 \> 7) IMPLIES EXIST (t : nat, f : nat) : j!1 + 1 = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node9" -> "node10"
    "node11" [
        label = "(flatten 1)"
    ]
    "node10" -> "node11"
    "node12" [
        label = "{[-1] (j!1 \> 7) IMPLIES EXIST (t : nat, f : nat) : j!1 = 3 * t + 5 * f|[1] (j!1 + 1 \> 7) IMPLIES EXIST (t : nat, f : nat) : j!1 + 1 = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node11" -> "node12"
    "node13" [
        label = "(flatten 1)"
    ]
    "node12" -> "node13"
    "node14" [
        label = "{[-1] j!1 + 1 \> 7\n[-2] (j!1 \> 7) IMPLIES EXIST (t : nat, f : nat) : j!1 = 3 * t + 5 * f|[1] EXIST (t : nat, f : nat) : j!1 + 1 = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node13" -> "node14"
    "node15" [
        label = "(split -2)"
    ]
    "node14" -> "node15"
    "node16" [
        label = "{[-1] EXIST (t : nat, f : nat) : j!1 = 3 * t + 5 * f\n[-2] j!1 + 1 \> 7|[1] EXIST (t : nat, f : nat) : j!1 + 1 = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node15" -> "node16" [label = "следствие в антецеденты"]
    "node17" [
        label = "(skolem! -1)"
    ]
    "node16" -> "node17"
    "node18" [
        label = "{[-1] j!1 = 3 * t!1 + 5 * f!1\n[-2] j!1 + 1 \> 7|[1] EXIST (t : nat, f : nat) : j!1 + 1 = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node17" -> "node18"
    "node19" [
        label = "(case \"f!1 = 0\")"
    ]
    "node18" -> "node19"
    "node20" [
        label = "{[-1] f!1 = 0\n[-2] j!1 = 3 * t!1 + 5 * f!1\n[-3] j!1 + 1 \> 7|[1] EXIST (t : nat, f : nat) : j!1 + 1 = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node19" -> "node20"
    "node21" [
        label = "(inst 1 \"t!1 - 3\" \"2\")"
    ]
    "node20" -> "node21"
    "node22" [
        label = "{[-1] f!1 = 0\n[-2] j!1 = 3 * t!1 + 5 * f!1\n[-3] j!1 + 1 \> 7|[1] j!1 + 1 = 3 * (t!1 - 3) + 5 * 2}"
        shape = "record"
    ]
    "node21" -> "node22"
    "node23" [
        label = "(replace -1)"
    ]
    "node22" -> "node23"
    "node24" [
        label = "{[-1] j!1 = 3 * t!1 + 5 * 0\n[-2] j!1 + 1 \> 7|[1] j!1 + 1 = 3 * (t!1 - 3) + 5 * 2}"
        shape = "record"
    ]
    "node23" -> "node24"
    "node25" [
        label = "(assert)"
        style = "filled"
        fillcolor = "green"
    ]
    "node24" -> "node25"
    "node26" [
        label = "{[-1] f!1 = 0\n[-2] j!1 = 3 * t!1 + 5 * f!1\n[-3] j!1 + 1 \> 7|[1] t!1 - 3 \>= 0}"
        shape = "record"
    ]
    "node21" -> "node26"
    "node27" [
        label = "(replace -1)"
    ]
    "node26" -> "node27"
    "node28" [
        label = "{[-1] j!1 = 3 * t!1 + 5 * 0\n[-2] j!1 + 1 \> 7|[1] t!1 - 3 \>= 0}"
        shape = "record"
    ]
    "node27" -> "node28"
    "node29" [
        label = "(assert)"
        style = "filled"
        fillcolor = "green"
    ]
    "node28" -> "node29"
    "node30" [
        label = "{[-1] j!1 = 3 * t!1 + 5 * f!1\n[-2] j!1 + 1 \> 7|[1] f!1 = 0\n[2] EXIST (t : nat, f : nat) : j!1 + 1 = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node19" -> "node30"
    "node31" [
        label = "(inst 2 \"t!1 + 2\" \"f!1 - 1\")"
    ]
    "node30" -> "node31"
    "node32" [
        label = "{[-1] j!1 = 3 * t!1 + 5 * f!1\n[-2] j!1 + 1 \> 7|[1] j!1 + 1 = 3 * (t!1 + 2) + 5 * (f!1 - 1)\n[2] f!1 = 0}"
        shape = "record"
    ]
    "node31" -> "node32"
    "node33" [
        label = "(assert)"
        style = "filled"
        fillcolor = "green"
    ]
    "node32" -> "node33"
    "node34" [
        label = "{[-1] j!1 = 3 * t!1 + 5 * f!1\n[-2] j!1 + 1 \> 7|[1] f!1 - 1 \>= 0\n[2] f!1 = 0}"
        shape = "record"
    ]
    "node31" -> "node34"
    "node35" [
        label = "(assert)"
        style = "filled"
        fillcolor = "green"
    ]
    "node34" -> "node35"
    "node36" [
        label = "{[-1] j!1 + 1 \> 7|[1] j!1 \> 7\n[2] EXIST (t : nat, f : nat) : j!1 + 1 = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node15" -> "node36" [label = "посылку в консеквенты"]
    "node37" [
        label = "(case \"j!1 = 7\")"
    ]
    "node36" -> "node37"
    "node38" [
        label = "{[-1] j!1 = 7\n[-2] j!1 + 1 \> 7|[1] j!1 \> 7\n[2] EXIST (t : nat, f : nat) : j!1 + 1 = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node37" -> "node38"
    "node39" [
        label = "(inst 2 \"1\" \"1\")"
    ]
    "node38" -> "node39"
    "node40" [
        label = "{[-1] j!1 = 7\n[-2] j!1 + 1 \> 7|[1] j!1 \> 7\n[2] j!1 + 1 = 3 * 1 + 5 * 1}"
        shape = "record"
    ]
    "node39" -> "node40"
    "node41" [
        label = "(assert)"
        style = "filled"
        fillcolor = "green"
    ]
    "node40" -> "node41"
    "node42" [
        label = "{[-1] j!1 + 1 \> 7|[1] j!1 = 7\n[2] j!1 \> 7\n[3] EXIST (t : nat, f : nat) : j!1 + 1 = 3 * t + 5 * f}"
        shape = "record"
    ]
    "node37" -> "node42"
    "node43" [
        label = "(assert)"
        style = "filled"
        fillcolor = "green"
    ]
    "node42" -> "node43"
}

История файла

Нажмите на дату, чтобы просмотреть как тогда выглядел файл.

Дата/времяУчастникРазмерыРазмер файлыПримечание
(текущая)20:48, 14 января 2009Bronikkk (Обсуждение | вклад)1687 × 2485246 КБ
17:06, 7 декабря 2008Bronikkk (Обсуждение | вклад)1687 × 2485246 КБАвтор: Игорь Бронштейн
17:00, 7 декабря 2008Bronikkk (Обсуждение | вклад)1687 × 2485245 КБВладелец: Игорь Бронштейн
16:41, 6 декабря 2008Bronikkk (Обсуждение | вклад)1687 × 2485244 КБ
03:23, 5 декабря 2008ESyr01 (Обсуждение | вклад)1708 × 2531248 КБАвтор: Василий Мерзляков.

Следующие страницы ссылаются на данный файл:

Личные инструменты
Разделы