Inference procedure has parameters: Ice fuel: 200 Timeout: 60s Convolution: left Learning problem is: env: { elt -> {a, b} ; eltlist -> {cons, nil} } definition: { (append, F: {() -> append([nil, l2, l2]) (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)])} (append([_vg, _wg, _xg]) /\ append([_vg, _wg, _yg])) -> eq_eltlist([_xg, _yg]) ) (reverse, F: {() -> reverse([nil, nil]) (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah])} (reverse([_bh, _ch]) /\ reverse([_bh, _dh])) -> eq_eltlist([_ch, _dh]) ) (mem, P: {() -> mem([h, cons(h, t)]) (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) (mem([e, nil])) -> BOT} ) } properties: {(mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh])} over-approximation: {append, reverse} under-approximation: {} Clause system for inference is: { () -> append([nil, l2, l2]) -> 0 () -> mem([h, cons(h, t)]) -> 0 () -> reverse([nil, nil]) -> 0 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 0 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 0 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 0 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 0 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 0 (mem([e, nil])) -> BOT -> 0 } Solving took 64.628941 seconds. DontKnow. Stopped because: timeout Working model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1766, q_gen_1767, q_gen_1768, q_gen_1771, q_gen_1772, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1783, q_gen_1784, q_gen_1785, q_gen_1793, q_gen_1794, q_gen_1795, q_gen_1806, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1810, q_gen_1815, q_gen_1816, q_gen_1817, q_gen_1827, q_gen_1828, q_gen_1829, q_gen_1830, q_gen_1841, q_gen_1842, q_gen_1843, q_gen_1844, q_gen_1845, q_gen_1849, q_gen_1850, q_gen_1851, q_gen_1852, q_gen_1853, q_gen_1855, q_gen_1859, q_gen_1860, q_gen_1861, q_gen_1862, q_gen_1866, q_gen_1867, q_gen_1868, q_gen_1872, q_gen_1873, q_gen_1874, q_gen_1875, q_gen_1876, q_gen_1877, q_gen_1881, q_gen_1882, q_gen_1883, q_gen_1884, q_gen_1885, q_gen_1886, q_gen_1888, q_gen_1889, q_gen_1890, q_gen_1891, q_gen_1892, q_gen_1894, q_gen_1895, q_gen_1896, q_gen_1901, q_gen_1903, q_gen_1904, q_gen_1909, q_gen_1910, q_gen_1912, q_gen_1913, q_gen_1916, q_gen_1917, q_gen_1918, q_gen_1924, q_gen_1925, q_gen_1926, q_gen_1927}, Q_f={}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1775, q_gen_1774) -> q_gen_1829 () -> q_gen_1761 () -> q_gen_1762 (q_gen_1768, q_gen_1761) -> q_gen_1767 () -> q_gen_1768 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1762, q_gen_1761) -> q_gen_1842 () -> q_gen_1845 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1762, q_gen_1852) -> q_gen_1860 () -> q_gen_1876 (q_gen_1762, q_gen_1784) -> q_gen_1896 (q_gen_1775, q_gen_1829) -> q_gen_1927 () -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1768, q_gen_1767) -> q_gen_1766 (q_gen_1762, q_gen_1761) -> q_gen_1771 (q_gen_1776, q_gen_1773) -> q_gen_1772 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 (q_gen_1762, q_gen_1784) -> q_gen_1783 (q_gen_1768, q_gen_1761) -> q_gen_1785 (q_gen_1794, q_gen_1773) -> q_gen_1793 () -> q_gen_1794 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1809, q_gen_1807) -> q_gen_1806 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 (q_gen_1809, q_gen_1756) -> q_gen_1810 (q_gen_1816, q_gen_1807) -> q_gen_1815 () -> q_gen_1816 (q_gen_1809, q_gen_1783) -> q_gen_1817 (q_gen_1794, q_gen_1828) -> q_gen_1827 (q_gen_1775, q_gen_1829) -> q_gen_1828 (q_gen_1809, q_gen_1773) -> q_gen_1830 (q_gen_1768, q_gen_1842) -> q_gen_1841 (q_gen_1809, q_gen_1844) -> q_gen_1843 (q_gen_1845, q_gen_1784) -> q_gen_1844 (q_gen_1776, q_gen_1807) -> q_gen_1849 (q_gen_1794, q_gen_1851) -> q_gen_1850 (q_gen_1762, q_gen_1852) -> q_gen_1851 (q_gen_1816, q_gen_1773) -> q_gen_1853 (q_gen_1762, q_gen_1767) -> q_gen_1855 (q_gen_1762, q_gen_1860) -> q_gen_1859 (q_gen_1809, q_gen_1828) -> q_gen_1861 (q_gen_1809, q_gen_1851) -> q_gen_1862 (q_gen_1794, q_gen_1756) -> q_gen_1866 (q_gen_1776, q_gen_1868) -> q_gen_1867 (q_gen_1768, q_gen_1761) -> q_gen_1868 (q_gen_1762, q_gen_1767) -> q_gen_1872 (q_gen_1845, q_gen_1761) -> q_gen_1873 (q_gen_1776, q_gen_1875) -> q_gen_1874 (q_gen_1876, q_gen_1852) -> q_gen_1875 (q_gen_1845, q_gen_1852) -> q_gen_1877 (q_gen_1876, q_gen_1761) -> q_gen_1881 (q_gen_1816, q_gen_1883) -> q_gen_1882 (q_gen_1776, q_gen_1756) -> q_gen_1883 (q_gen_1816, q_gen_1885) -> q_gen_1884 (q_gen_1794, q_gen_1760) -> q_gen_1885 (q_gen_1794, q_gen_1807) -> q_gen_1886 (q_gen_1809, q_gen_1889) -> q_gen_1888 (q_gen_1876, q_gen_1842) -> q_gen_1889 (q_gen_1816, q_gen_1891) -> q_gen_1890 (q_gen_1809, q_gen_1795) -> q_gen_1891 (q_gen_1762, q_gen_1852) -> q_gen_1892 (q_gen_1809, q_gen_1895) -> q_gen_1894 (q_gen_1762, q_gen_1896) -> q_gen_1895 (q_gen_1816, q_gen_1859) -> q_gen_1901 (q_gen_1776, q_gen_1783) -> q_gen_1903 (q_gen_1794, q_gen_1783) -> q_gen_1904 (q_gen_1776, q_gen_1910) -> q_gen_1909 (q_gen_1808, q_gen_1829) -> q_gen_1910 (q_gen_1816, q_gen_1913) -> q_gen_1912 (q_gen_1768, q_gen_1852) -> q_gen_1913 (q_gen_1776, q_gen_1895) -> q_gen_1916 (q_gen_1794, q_gen_1918) -> q_gen_1917 (q_gen_1768, q_gen_1896) -> q_gen_1918 (q_gen_1809, q_gen_1771) -> q_gen_1924 (q_gen_1816, q_gen_1772) -> q_gen_1925 (q_gen_1762, q_gen_1927) -> q_gen_1926 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1757, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1764, q_gen_1765, q_gen_1769, q_gen_1770, q_gen_1779, q_gen_1780, q_gen_1781, q_gen_1782, q_gen_1788, q_gen_1789, q_gen_1790, q_gen_1791, q_gen_1792, q_gen_1801, q_gen_1802, q_gen_1803, q_gen_1804, q_gen_1805, q_gen_1813, q_gen_1814, q_gen_1822, q_gen_1823, q_gen_1824, q_gen_1825, q_gen_1826, q_gen_1834, q_gen_1835, q_gen_1836, q_gen_1837, q_gen_1838, q_gen_1839, q_gen_1840, q_gen_1847, q_gen_1848, q_gen_1856, q_gen_1857, q_gen_1858, q_gen_1863, q_gen_1864, q_gen_1865, q_gen_1898, q_gen_1922, q_gen_1923, q_gen_1931}, Q_f={}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1781) -> q_gen_1792 (q_gen_1755, q_gen_1758) -> q_gen_1802 (q_gen_1755, q_gen_1770) -> q_gen_1823 (q_gen_1759, q_gen_1770) -> q_gen_1826 (q_gen_1755, q_gen_1838) -> q_gen_1837 (q_gen_1759, q_gen_1802) -> q_gen_1838 (q_gen_1759, q_gen_1837) -> q_gen_1840 (q_gen_1759, q_gen_1781) -> q_gen_1858 (q_gen_1755, q_gen_1792) -> q_gen_1865 (q_gen_1755, q_gen_1802) -> q_gen_1923 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1757 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1764 (q_gen_1759, q_gen_1754) -> q_gen_1765 (q_gen_1759, q_gen_1770) -> q_gen_1769 (q_gen_1755, q_gen_1758) -> q_gen_1779 (q_gen_1755, q_gen_1781) -> q_gen_1780 (q_gen_1759, q_gen_1781) -> q_gen_1782 (q_gen_1759, q_gen_1758) -> q_gen_1788 (q_gen_1755, q_gen_1754) -> q_gen_1789 () -> q_gen_1790 (q_gen_1755, q_gen_1792) -> q_gen_1791 (q_gen_1759, q_gen_1802) -> q_gen_1801 (q_gen_1755, q_gen_1781) -> q_gen_1803 (q_gen_1755, q_gen_1758) -> q_gen_1804 (q_gen_1755, q_gen_1770) -> q_gen_1805 (q_gen_1755, q_gen_1770) -> q_gen_1813 (q_gen_1759, q_gen_1792) -> q_gen_1814 (q_gen_1755, q_gen_1823) -> q_gen_1822 (q_gen_1759, q_gen_1823) -> q_gen_1824 (q_gen_1759, q_gen_1826) -> q_gen_1825 (q_gen_1755, q_gen_1802) -> q_gen_1834 (q_gen_1759, q_gen_1781) -> q_gen_1835 (q_gen_1759, q_gen_1837) -> q_gen_1836 (q_gen_1755, q_gen_1840) -> q_gen_1839 (q_gen_1759, q_gen_1770) -> q_gen_1847 (q_gen_1759, q_gen_1823) -> q_gen_1848 (q_gen_1759, q_gen_1802) -> q_gen_1856 (q_gen_1755, q_gen_1858) -> q_gen_1857 (q_gen_1755, q_gen_1858) -> q_gen_1863 (q_gen_1755, q_gen_1865) -> q_gen_1864 (q_gen_1759, q_gen_1858) -> q_gen_1898 (q_gen_1755, q_gen_1923) -> q_gen_1922 (q_gen_1755, q_gen_1802) -> q_gen_1931 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1777, q_gen_1778, q_gen_1786, q_gen_1787, q_gen_1796, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1800, q_gen_1811, q_gen_1812, q_gen_1818, q_gen_1819, q_gen_1820, q_gen_1821, q_gen_1831, q_gen_1832, q_gen_1833, q_gen_1846, q_gen_1854, q_gen_1869, q_gen_1870, q_gen_1871, q_gen_1878, q_gen_1879, q_gen_1880, q_gen_1887, q_gen_1893, q_gen_1897, q_gen_1899, q_gen_1900, q_gen_1902, q_gen_1905, q_gen_1906, q_gen_1907, q_gen_1908, q_gen_1911, q_gen_1914, q_gen_1915, q_gen_1919, q_gen_1920, q_gen_1921, q_gen_1928, q_gen_1929, q_gen_1930, q_gen_1932}, Q_f={}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1880 (q_gen_1799, q_gen_1798) -> q_gen_1930 () -> q_gen_1752 (q_gen_1778, q_gen_1752) -> q_gen_1777 () -> q_gen_1778 (q_gen_1787, q_gen_1752) -> q_gen_1786 () -> q_gen_1787 (q_gen_1778, q_gen_1797) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1797 (q_gen_1787, q_gen_1796) -> q_gen_1800 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 (q_gen_1812, q_gen_1796) -> q_gen_1818 (q_gen_1778, q_gen_1820) -> q_gen_1819 (q_gen_1778, q_gen_1821) -> q_gen_1820 (q_gen_1787, q_gen_1797) -> q_gen_1821 (q_gen_1812, q_gen_1797) -> q_gen_1831 (q_gen_1778, q_gen_1833) -> q_gen_1832 (q_gen_1812, q_gen_1777) -> q_gen_1833 (q_gen_1787, q_gen_1786) -> q_gen_1846 (q_gen_1787, q_gen_1811) -> q_gen_1854 (q_gen_1870, q_gen_1797) -> q_gen_1869 () -> q_gen_1870 (q_gen_1870, q_gen_1752) -> q_gen_1871 (q_gen_1870, q_gen_1879) -> q_gen_1878 (q_gen_1880, q_gen_1798) -> q_gen_1879 (q_gen_1870, q_gen_1786) -> q_gen_1887 (q_gen_1778, q_gen_1879) -> q_gen_1893 (q_gen_1812, q_gen_1871) -> q_gen_1897 (q_gen_1870, q_gen_1878) -> q_gen_1899 (q_gen_1870, q_gen_1871) -> q_gen_1900 (q_gen_1812, q_gen_1833) -> q_gen_1902 (q_gen_1870, q_gen_1831) -> q_gen_1905 (q_gen_1812, q_gen_1831) -> q_gen_1906 (q_gen_1778, q_gen_1796) -> q_gen_1907 (q_gen_1778, q_gen_1811) -> q_gen_1908 (q_gen_1870, q_gen_1811) -> q_gen_1911 (q_gen_1870, q_gen_1777) -> q_gen_1914 (q_gen_1787, q_gen_1871) -> q_gen_1915 (q_gen_1870, q_gen_1821) -> q_gen_1919 (q_gen_1870, q_gen_1905) -> q_gen_1920 (q_gen_1812, q_gen_1832) -> q_gen_1921 (q_gen_1778, q_gen_1929) -> q_gen_1928 (q_gen_1799, q_gen_1930) -> q_gen_1929 (q_gen_1870, q_gen_1900) -> q_gen_1932 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| ------------------- STEPS: ------------------------------------------- Step 0, which took 0.007428 s (model generation: 0.007106, model checking: 0.000322): Model: |_ { append -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: left }}} ; mem -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 0 () -> mem([h, cons(h, t)]) -> 0 () -> reverse([nil, nil]) -> 3 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 1 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 1 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 1 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 1 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 1 (mem([e, nil])) -> BOT -> 1 } Sat witness: Found: (() -> reverse([nil, nil]), { }) ------------------------------------------- Step 1, which took 0.007975 s (model generation: 0.007889, model checking: 0.000086): Model: |_ { append -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: left }}} ; mem -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1752 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 0 () -> mem([h, cons(h, t)]) -> 3 () -> reverse([nil, nil]) -> 3 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 1 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 1 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 1 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 1 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 1 (mem([e, nil])) -> BOT -> 1 } Sat witness: Found: (() -> mem([h, cons(h, t)]), { h -> b ; t -> nil }) ------------------------------------------- Step 2, which took 0.008193 s (model generation: 0.007268, model checking: 0.000925): Model: |_ { append -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1753 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1752 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 3 () -> mem([h, cons(h, t)]) -> 3 () -> reverse([nil, nil]) -> 3 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 1 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 1 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 1 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 1 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 1 (mem([e, nil])) -> BOT -> 1 } Sat witness: Found: (() -> append([nil, l2, l2]), { l2 -> nil }) ------------------------------------------- Step 3, which took 0.007772 s (model generation: 0.007428, model checking: 0.000344): Model: |_ { append -> {{{ Q={q_gen_1756}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1756 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1753 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1752 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 3 () -> mem([h, cons(h, t)]) -> 3 () -> reverse([nil, nil]) -> 3 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 1 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 1 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 1 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 4 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 2 (mem([e, nil])) -> BOT -> 2 } Sat witness: Found: ((mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]), { e -> b ; h -> a ; t -> cons(b, nil) }) ------------------------------------------- Step 4, which took 0.009855 s (model generation: 0.009618, model checking: 0.000237): Model: |_ { append -> {{{ Q={q_gen_1756}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1756 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755}, Q_f={q_gen_1753}, Delta= { (q_gen_1755, q_gen_1754) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1753 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1752 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 3 () -> mem([h, cons(h, t)]) -> 3 () -> reverse([nil, nil]) -> 3 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 1 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 4 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 2 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 4 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 2 (mem([e, nil])) -> BOT -> 2 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> nil ; h1 -> b ; l2 -> nil ; t1 -> nil }) ------------------------------------------- Step 5, which took 0.010384 s (model generation: 0.010227, model checking: 0.000157): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1761 () -> q_gen_1762 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755}, Q_f={q_gen_1753}, Delta= { (q_gen_1755, q_gen_1754) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1753 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1752 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 3 () -> mem([h, cons(h, t)]) -> 3 () -> reverse([nil, nil]) -> 3 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 2 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 4 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 2 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 4 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 5 (mem([e, nil])) -> BOT -> 3 } Sat witness: Found: ((mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]), { e -> b ; h -> a ; t -> nil }) ------------------------------------------- Step 6, which took 0.008742 s (model generation: 0.008563, model checking: 0.000179): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1761 () -> q_gen_1762 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755}, Q_f={q_gen_1753}, Delta= { (q_gen_1755, q_gen_1754) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1753 () -> q_gen_1753 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1752 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 3 () -> mem([h, cons(h, t)]) -> 3 () -> reverse([nil, nil]) -> 3 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 3 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 4 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 3 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 4 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 5 (mem([e, nil])) -> BOT -> 6 } Sat witness: Found: ((mem([e, nil])) -> BOT, { e -> b }) ------------------------------------------- Step 7, which took 0.010127 s (model generation: 0.008888, model checking: 0.001239): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1761 () -> q_gen_1762 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1752 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 3 () -> mem([h, cons(h, t)]) -> 6 () -> reverse([nil, nil]) -> 4 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 4 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 4 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 4 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 4 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 5 (mem([e, nil])) -> BOT -> 6 } Sat witness: Found: (() -> mem([h, cons(h, t)]), { h -> a ; t -> nil }) ------------------------------------------- Step 8, which took 0.008910 s (model generation: 0.008606, model checking: 0.000304): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1761 () -> q_gen_1762 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1752 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 6 () -> mem([h, cons(h, t)]) -> 6 () -> reverse([nil, nil]) -> 4 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 4 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 4 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 4 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 4 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 5 (mem([e, nil])) -> BOT -> 6 } Sat witness: Found: (() -> append([nil, l2, l2]), { l2 -> cons(a, cons(a, nil)) }) ------------------------------------------- Step 9, which took 0.009920 s (model generation: 0.008912, model checking: 0.001008): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762}, Q_f={q_gen_1756}, Delta= { (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1752 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 6 () -> mem([h, cons(h, t)]) -> 6 () -> reverse([nil, nil]) -> 4 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 4 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 4 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 4 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 7 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 5 (mem([e, nil])) -> BOT -> 6 } Sat witness: Found: ((mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]), { e -> b ; h -> a ; t -> cons(a, cons(b, nil)) }) ------------------------------------------- Step 10, which took 0.011078 s (model generation: 0.009801, model checking: 0.001277): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762}, Q_f={q_gen_1756}, Delta= { (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1752 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 6 () -> mem([h, cons(h, t)]) -> 6 () -> reverse([nil, nil]) -> 4 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 4 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 7 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 5 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 7 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 5 (mem([e, nil])) -> BOT -> 6 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, nil) ; h1 -> b ; l2 -> cons(b, nil) ; t1 -> nil }) ------------------------------------------- Step 11, which took 0.015836 s (model generation: 0.015676, model checking: 0.000160): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1752 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 6 () -> mem([h, cons(h, t)]) -> 6 () -> reverse([nil, nil]) -> 4 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 7 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 7 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 5 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 7 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 5 (mem([e, nil])) -> BOT -> 6 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(b, nil) ; _zg -> nil ; h1 -> b ; t1 -> nil }) ------------------------------------------- Step 12, which took 0.013516 s (model generation: 0.011317, model checking: 0.002199): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778}, Q_f={q_gen_1752}, Delta= { (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 6 () -> mem([h, cons(h, t)]) -> 9 () -> reverse([nil, nil]) -> 5 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 7 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 7 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 6 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 7 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 6 (mem([e, nil])) -> BOT -> 7 } Sat witness: Found: (() -> mem([h, cons(h, t)]), { h -> b ; t -> cons(b, nil) }) ------------------------------------------- Step 13, which took 0.014013 s (model generation: 0.011336, model checking: 0.002677): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778}, Q_f={q_gen_1752}, Delta= { (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 7 () -> mem([h, cons(h, t)]) -> 9 () -> reverse([nil, nil]) -> 6 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 7 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 7 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 7 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 10 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 7 (mem([e, nil])) -> BOT -> 8 } Sat witness: Found: ((mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]), { e -> a ; h -> b ; t -> cons(a, nil) }) ------------------------------------------- Step 14, which took 0.013078 s (model generation: 0.012485, model checking: 0.000593): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1759, q_gen_1754) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778}, Q_f={q_gen_1752}, Delta= { (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 7 () -> mem([h, cons(h, t)]) -> 9 () -> reverse([nil, nil]) -> 7 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 7 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 7 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 7 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 10 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 10 (mem([e, nil])) -> BOT -> 8 } Sat witness: Found: ((mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]), { e -> b ; h -> a ; t -> cons(a, nil) }) ------------------------------------------- Step 15, which took 0.014979 s (model generation: 0.013279, model checking: 0.001700): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763}, Q_f={q_gen_1753}, Delta= { (q_gen_1759, q_gen_1754) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778}, Q_f={q_gen_1752}, Delta= { (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 7 () -> mem([h, cons(h, t)]) -> 9 () -> reverse([nil, nil]) -> 7 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 7 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 10 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 8 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 10 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 10 (mem([e, nil])) -> BOT -> 8 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, nil) ; h1 -> b ; l2 -> nil ; t1 -> nil }) ------------------------------------------- Step 16, which took 0.014439 s (model generation: 0.014231, model checking: 0.000208): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763}, Q_f={q_gen_1753}, Delta= { (q_gen_1759, q_gen_1754) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778}, Q_f={q_gen_1752}, Delta= { (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 7 () -> mem([h, cons(h, t)]) -> 9 () -> reverse([nil, nil]) -> 7 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 10 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 10 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 8 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 10 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 10 (mem([e, nil])) -> BOT -> 8 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(a, nil) ; _zg -> nil ; h1 -> a ; t1 -> nil }) ------------------------------------------- Step 17, which took 0.017099 s (model generation: 0.015100, model checking: 0.001999): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763}, Q_f={q_gen_1753}, Delta= { (q_gen_1759, q_gen_1754) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778}, Q_f={q_gen_1752}, Delta= { (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 8 () -> mem([h, cons(h, t)]) -> 12 () -> reverse([nil, nil]) -> 8 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 10 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 10 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 9 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 10 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 10 (mem([e, nil])) -> BOT -> 9 } Sat witness: Found: (() -> mem([h, cons(h, t)]), { h -> a ; t -> cons(b, nil) }) ------------------------------------------- Step 18, which took 0.016753 s (model generation: 0.014747, model checking: 0.002006): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763}, Q_f={q_gen_1753}, Delta= { (q_gen_1759, q_gen_1754) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778}, Q_f={q_gen_1752}, Delta= { (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 9 () -> mem([h, cons(h, t)]) -> 12 () -> reverse([nil, nil]) -> 9 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 10 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 10 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 10 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 10 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 13 (mem([e, nil])) -> BOT -> 10 } Sat witness: Found: ((mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]), { e -> a ; h -> b ; t -> nil }) ------------------------------------------- Step 19, which took 0.016755 s (model generation: 0.016382, model checking: 0.000373): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763}, Q_f={q_gen_1753}, Delta= { (q_gen_1759, q_gen_1754) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 () -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778}, Q_f={q_gen_1752}, Delta= { (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 10 () -> mem([h, cons(h, t)]) -> 12 () -> reverse([nil, nil]) -> 10 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 10 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 10 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 10 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 10 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 13 (mem([e, nil])) -> BOT -> 13 } Sat witness: Found: ((mem([e, nil])) -> BOT, { e -> a }) ------------------------------------------- Step 20, which took 0.023284 s (model generation: 0.021615, model checking: 0.001669): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778}, Q_f={q_gen_1752}, Delta= { (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 10 () -> mem([h, cons(h, t)]) -> 12 () -> reverse([nil, nil]) -> 10 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 10 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 10 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 10 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 13 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 13 (mem([e, nil])) -> BOT -> 13 } Sat witness: Found: ((mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]), { e -> a ; h -> b ; t -> cons(b, cons(a, nil)) }) ------------------------------------------- Step 21, which took 0.020021 s (model generation: 0.017416, model checking: 0.002605): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1781) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778}, Q_f={q_gen_1752}, Delta= { (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 10 () -> mem([h, cons(h, t)]) -> 12 () -> reverse([nil, nil]) -> 10 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 10 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 13 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 11 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 13 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 13 (mem([e, nil])) -> BOT -> 13 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, nil) ; h1 -> a ; l2 -> cons(b, nil) ; t1 -> nil }) ------------------------------------------- Step 22, which took 0.018002 s (model generation: 0.017768, model checking: 0.000234): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1781) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778}, Q_f={q_gen_1752}, Delta= { (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 10 () -> mem([h, cons(h, t)]) -> 12 () -> reverse([nil, nil]) -> 10 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 13 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 13 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 11 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 13 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 13 (mem([e, nil])) -> BOT -> 13 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(b, cons(b, nil)) ; _zg -> nil ; h1 -> b ; t1 -> nil }) ------------------------------------------- Step 23, which took 0.021746 s (model generation: 0.019500, model checking: 0.002246): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1781) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 11 () -> mem([h, cons(h, t)]) -> 12 () -> reverse([nil, nil]) -> 11 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 13 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 13 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 14 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 13 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 13 (mem([e, nil])) -> BOT -> 13 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(a, cons(b, cons(b, nil))) ; e -> a ; l1 -> cons(a, cons(b, nil)) }) ------------------------------------------- Step 24, which took 0.023400 s (model generation: 0.022670, model checking: 0.000730): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 (q_gen_1755, q_gen_1781) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 12 () -> mem([h, cons(h, t)]) -> 15 () -> reverse([nil, nil]) -> 12 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 13 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 13 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 14 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 13 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 13 (mem([e, nil])) -> BOT -> 13 } Sat witness: Found: (() -> mem([h, cons(h, t)]), { h -> b ; t -> cons(a, nil) }) ------------------------------------------- Step 25, which took 0.023511 s (model generation: 0.022239, model checking: 0.001272): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 (q_gen_1755, q_gen_1781) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 13 () -> mem([h, cons(h, t)]) -> 15 () -> reverse([nil, nil]) -> 13 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 13 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 13 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 14 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 13 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 16 (mem([e, nil])) -> BOT -> 14 } Sat witness: Found: ((mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]), { e -> a ; h -> b ; t -> cons(b, nil) }) ------------------------------------------- Step 26, which took 0.024949 s (model generation: 0.023474, model checking: 0.001475): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 (q_gen_1759, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1781) -> q_gen_1781 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 13 () -> mem([h, cons(h, t)]) -> 15 () -> reverse([nil, nil]) -> 13 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 13 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 13 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 14 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 16 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 16 (mem([e, nil])) -> BOT -> 14 } Sat witness: Found: ((mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]), { e -> a ; h -> b ; t -> cons(a, cons(b, nil)) }) ------------------------------------------- Step 27, which took 0.027513 s (model generation: 0.025446, model checking: 0.002067): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1781 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 13 () -> mem([h, cons(h, t)]) -> 15 () -> reverse([nil, nil]) -> 13 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 13 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 16 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 14 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 16 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 16 (mem([e, nil])) -> BOT -> 14 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(a, nil) ; h1 -> b ; l2 -> cons(a, nil) ; t1 -> nil }) ------------------------------------------- Step 28, which took 0.028626 s (model generation: 0.028125, model checking: 0.000501): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1781 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 13 () -> mem([h, cons(h, t)]) -> 15 () -> reverse([nil, nil]) -> 13 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 16 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 16 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 14 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 16 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 16 (mem([e, nil])) -> BOT -> 14 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(b, nil) ; _zg -> cons(b, nil) ; h1 -> a ; t1 -> nil }) ------------------------------------------- Step 29, which took 0.031883 s (model generation: 0.028998, model checking: 0.002885): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1781 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 14 () -> mem([h, cons(h, t)]) -> 15 () -> reverse([nil, nil]) -> 14 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 16 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 16 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 17 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 16 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 16 (mem([e, nil])) -> BOT -> 15 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(b, nil) ; e -> a ; l1 -> cons(a, nil) }) ------------------------------------------- Step 30, which took 0.030332 s (model generation: 0.029197, model checking: 0.001135): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1797) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 15 () -> mem([h, cons(h, t)]) -> 18 () -> reverse([nil, nil]) -> 15 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 16 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 16 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 17 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 16 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 16 (mem([e, nil])) -> BOT -> 16 } Sat witness: Found: (() -> mem([h, cons(h, t)]), { h -> b ; t -> cons(a, cons(b, nil)) }) ------------------------------------------- Step 31, which took 0.034885 s (model generation: 0.029003, model checking: 0.005882): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1781 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1797) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 16 () -> mem([h, cons(h, t)]) -> 18 () -> reverse([nil, nil]) -> 16 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 16 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 16 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 17 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 19 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 17 (mem([e, nil])) -> BOT -> 17 } Sat witness: Found: ((mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]), { e -> b ; h -> a ; t -> cons(b, cons(a, nil)) }) ------------------------------------------- Step 32, which took 0.032984 s (model generation: 0.031307, model checking: 0.001677): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1797) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 16 () -> mem([h, cons(h, t)]) -> 18 () -> reverse([nil, nil]) -> 16 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 16 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 19 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 17 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 19 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 17 (mem([e, nil])) -> BOT -> 17 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(a, nil) ; h1 -> a ; l2 -> cons(a, nil) ; t1 -> nil }) ------------------------------------------- Step 33, which took 0.033099 s (model generation: 0.032735, model checking: 0.000364): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1797) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 16 () -> mem([h, cons(h, t)]) -> 18 () -> reverse([nil, nil]) -> 16 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 19 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 19 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 17 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 19 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 17 (mem([e, nil])) -> BOT -> 17 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(b, cons(b, cons(b, nil))) ; _zg -> cons(b, cons(b, nil)) ; h1 -> a ; t1 -> cons(b, nil) }) ------------------------------------------- Step 34, which took 0.043881 s (model generation: 0.036249, model checking: 0.007632): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 17 () -> mem([h, cons(h, t)]) -> 18 () -> reverse([nil, nil]) -> 17 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 19 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 19 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 20 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 19 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 18 (mem([e, nil])) -> BOT -> 18 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(b, cons(b, cons(a, cons(b, nil)))) ; e -> a ; l1 -> cons(b, cons(b, cons(a, nil))) }) ------------------------------------------- Step 35, which took 0.041130 s (model generation: 0.040394, model checking: 0.000736): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1767, q_gen_1771, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1761) -> q_gen_1767 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1767) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1771 (q_gen_1762, q_gen_1761) -> q_gen_1771 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1770) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1755, q_gen_1758) -> q_gen_1781 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1777, q_gen_1778, q_gen_1798, q_gen_1799}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1752 (q_gen_1778, q_gen_1752) -> q_gen_1777 (q_gen_1778, q_gen_1777) -> q_gen_1777 (q_gen_1799, q_gen_1798) -> q_gen_1777 () -> q_gen_1778 () -> q_gen_1778 () -> q_gen_1778 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 20 () -> mem([h, cons(h, t)]) -> 18 () -> reverse([nil, nil]) -> 18 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 19 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 19 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 20 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 19 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 18 (mem([e, nil])) -> BOT -> 18 } Sat witness: Found: (() -> append([nil, l2, l2]), { l2 -> cons(b, nil) }) ------------------------------------------- Step 36, which took 0.047428 s (model generation: 0.039928, model checking: 0.007500): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1755, q_gen_1770) -> q_gen_1781 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1797) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 20 () -> mem([h, cons(h, t)]) -> 21 () -> reverse([nil, nil]) -> 19 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 19 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 19 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 20 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 19 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 19 (mem([e, nil])) -> BOT -> 19 } Sat witness: Found: (() -> mem([h, cons(h, t)]), { h -> a ; t -> cons(b, cons(a, cons(b, nil))) }) ------------------------------------------- Step 37, which took 0.049024 s (model generation: 0.041380, model checking: 0.007644): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 20 () -> mem([h, cons(h, t)]) -> 21 () -> reverse([nil, nil]) -> 19 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 19 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 19 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 20 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 22 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 20 (mem([e, nil])) -> BOT -> 20 } Sat witness: Found: ((mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]), { e -> b ; h -> a ; t -> cons(a, cons(a, cons(b, nil))) }) ------------------------------------------- Step 38, which took 0.046617 s (model generation: 0.044590, model checking: 0.002027): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 (q_gen_1759, q_gen_1770) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1777, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752, q_gen_1777}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1752 (q_gen_1778, q_gen_1752) -> q_gen_1777 (q_gen_1778, q_gen_1777) -> q_gen_1777 (q_gen_1778, q_gen_1797) -> q_gen_1777 (q_gen_1812, q_gen_1777) -> q_gen_1777 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 20 () -> mem([h, cons(h, t)]) -> 21 () -> reverse([nil, nil]) -> 19 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 19 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 22 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 20 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 22 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 20 (mem([e, nil])) -> BOT -> 20 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, cons(b, nil)) ; h1 -> a ; l2 -> cons(b, nil) ; t1 -> nil }) ------------------------------------------- Step 39, which took 0.046070 s (model generation: 0.045407, model checking: 0.000663): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 (q_gen_1759, q_gen_1770) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 20 () -> mem([h, cons(h, t)]) -> 21 () -> reverse([nil, nil]) -> 19 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 22 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 22 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 20 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 22 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 20 (mem([e, nil])) -> BOT -> 20 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(b, cons(b, nil)) ; _zg -> cons(b, nil) ; h1 -> a ; t1 -> nil }) ------------------------------------------- Step 40, which took 0.067058 s (model generation: 0.052846, model checking: 0.014212): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 (q_gen_1759, q_gen_1770) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1797) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1812, q_gen_1797) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 20 () -> mem([h, cons(h, t)]) -> 21 () -> reverse([nil, nil]) -> 20 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 22 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 22 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 23 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 22 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 21 (mem([e, nil])) -> BOT -> 21 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(b, cons(b, cons(b, nil))) ; e -> a ; l1 -> cons(b, cons(a, cons(b, nil))) }) ------------------------------------------- Step 41, which took 0.057089 s (model generation: 0.055371, model checking: 0.001718): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1759, q_gen_1770) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1755, q_gen_1758) -> q_gen_1781 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1797) -> q_gen_1752 (q_gen_1812, q_gen_1797) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 21 () -> mem([h, cons(h, t)]) -> 21 () -> reverse([nil, nil]) -> 21 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 22 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 22 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 23 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 22 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 24 (mem([e, nil])) -> BOT -> 22 } Sat witness: Found: ((mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]), { e -> a ; h -> b ; t -> cons(b, cons(b, nil)) }) ------------------------------------------- Step 42, which took 0.056376 s (model generation: 0.055738, model checking: 0.000638): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 (q_gen_1759, q_gen_1770) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1777, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752, q_gen_1777}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1812, q_gen_1797) -> q_gen_1752 () -> q_gen_1752 (q_gen_1778, q_gen_1752) -> q_gen_1777 (q_gen_1778, q_gen_1797) -> q_gen_1777 (q_gen_1812, q_gen_1777) -> q_gen_1777 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1777) -> q_gen_1797 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 21 () -> mem([h, cons(h, t)]) -> 24 () -> reverse([nil, nil]) -> 22 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 22 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 22 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 23 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 22 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 24 (mem([e, nil])) -> BOT -> 22 } Sat witness: Found: (() -> mem([h, cons(h, t)]), { h -> a ; t -> cons(a, nil) }) ------------------------------------------- Step 43, which took 0.059548 s (model generation: 0.056236, model checking: 0.003312): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 (q_gen_1759, q_gen_1770) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1777, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752, q_gen_1777}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1752 (q_gen_1778, q_gen_1752) -> q_gen_1777 (q_gen_1778, q_gen_1797) -> q_gen_1777 (q_gen_1812, q_gen_1777) -> q_gen_1777 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1777) -> q_gen_1797 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1812, q_gen_1797) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 22 () -> mem([h, cons(h, t)]) -> 24 () -> reverse([nil, nil]) -> 22 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 22 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 22 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 23 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 25 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 24 (mem([e, nil])) -> BOT -> 23 } Sat witness: Found: ((mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]), { e -> a ; h -> b ; t -> cons(a, cons(b, cons(a, cons(b, cons(b, nil))))) }) ------------------------------------------- Step 44, which took 0.070560 s (model generation: 0.064328, model checking: 0.006232): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1777, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752, q_gen_1777}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1752 (q_gen_1778, q_gen_1752) -> q_gen_1777 (q_gen_1778, q_gen_1797) -> q_gen_1777 (q_gen_1812, q_gen_1777) -> q_gen_1777 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1777) -> q_gen_1797 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1812, q_gen_1797) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 22 () -> mem([h, cons(h, t)]) -> 24 () -> reverse([nil, nil]) -> 22 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 22 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 25 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 23 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 25 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 24 (mem([e, nil])) -> BOT -> 23 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(a, cons(b, nil)) ; h1 -> b ; l2 -> cons(a, cons(b, nil)) ; t1 -> nil }) ------------------------------------------- Step 45, which took 0.068839 s (model generation: 0.067686, model checking: 0.001153): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1777, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752, q_gen_1777}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1752 (q_gen_1778, q_gen_1752) -> q_gen_1777 (q_gen_1778, q_gen_1797) -> q_gen_1777 (q_gen_1812, q_gen_1777) -> q_gen_1777 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1777) -> q_gen_1797 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1812, q_gen_1797) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 22 () -> mem([h, cons(h, t)]) -> 24 () -> reverse([nil, nil]) -> 22 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 25 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 25 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 23 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 25 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 24 (mem([e, nil])) -> BOT -> 23 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(a, cons(a, nil)) ; _zg -> cons(a, nil) ; h1 -> a ; t1 -> cons(a, nil) }) ------------------------------------------- Step 46, which took 2.483051 s (model generation: 0.077220, model checking: 2.405831): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { (q_gen_1755, q_gen_1770) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 (q_gen_1759, q_gen_1770) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 23 () -> mem([h, cons(h, t)]) -> 27 () -> reverse([nil, nil]) -> 23 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 25 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 25 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 24 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 25 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 25 (mem([e, nil])) -> BOT -> 24 } Sat witness: Found: (() -> mem([h, cons(h, t)]), { h -> a ; t -> cons(a, cons(b, nil)) }) ------------------------------------------- Step 47, which took 0.079421 s (model generation: 0.076023, model checking: 0.003398): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1777, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812, q_gen_1818}, Q_f={q_gen_1752, q_gen_1777, q_gen_1818}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1752 (q_gen_1778, q_gen_1752) -> q_gen_1777 (q_gen_1778, q_gen_1777) -> q_gen_1777 (q_gen_1778, q_gen_1797) -> q_gen_1777 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1818) -> q_gen_1797 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1812, q_gen_1797) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 (q_gen_1812, q_gen_1777) -> q_gen_1818 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 24 () -> mem([h, cons(h, t)]) -> 27 () -> reverse([nil, nil]) -> 24 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 25 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 25 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 27 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 25 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 25 (mem([e, nil])) -> BOT -> 25 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(b, cons(b, cons(b, nil))) ; e -> a ; l1 -> cons(a, cons(b, nil)) }) ------------------------------------------- Step 48, which took 2.104951 s (model generation: 0.077962, model checking: 2.026989): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { (q_gen_1755, q_gen_1770) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 (q_gen_1759, q_gen_1770) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 25 () -> mem([h, cons(h, t)]) -> 27 () -> reverse([nil, nil]) -> 25 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 25 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 25 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 27 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 28 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 26 (mem([e, nil])) -> BOT -> 26 } Sat witness: Found: ((mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]), { e -> b ; h -> a ; t -> cons(b, cons(a, cons(b, nil))) }) ------------------------------------------- Step 49, which took 0.078259 s (model generation: 0.077159, model checking: 0.001100): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { (q_gen_1755, q_gen_1758) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1770) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 25 () -> mem([h, cons(h, t)]) -> 27 () -> reverse([nil, nil]) -> 25 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 25 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 28 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 27 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 28 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 26 (mem([e, nil])) -> BOT -> 26 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, cons(a, nil)) ; h1 -> a ; l2 -> cons(b, nil) ; t1 -> cons(b, nil) }) ------------------------------------------- Step 50, which took 0.086375 s (model generation: 0.085157, model checking: 0.001218): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1762, q_gen_1784) -> q_gen_1795 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 (q_gen_1755, q_gen_1770) -> q_gen_1758 (q_gen_1759, q_gen_1770) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 25 () -> mem([h, cons(h, t)]) -> 27 () -> reverse([nil, nil]) -> 25 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 28 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 28 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 27 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 28 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 26 (mem([e, nil])) -> BOT -> 26 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(a, cons(b, nil)) ; _zg -> cons(a, nil) ; h1 -> a ; t1 -> cons(a, nil) }) ------------------------------------------- Step 51, which took 0.122549 s (model generation: 0.121962, model checking: 0.000587): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1767, q_gen_1768, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1785}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1768, q_gen_1761) -> q_gen_1767 (q_gen_1775, q_gen_1774) -> q_gen_1767 () -> q_gen_1768 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1767) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1768, q_gen_1767) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1785) -> q_gen_1785 (q_gen_1762, q_gen_1767) -> q_gen_1785 (q_gen_1768, q_gen_1761) -> q_gen_1785 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1786, q_gen_1787, q_gen_1798, q_gen_1799}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 (q_gen_1778, q_gen_1786) -> q_gen_1786 (q_gen_1787, q_gen_1752) -> q_gen_1786 (q_gen_1787, q_gen_1786) -> q_gen_1786 (q_gen_1799, q_gen_1798) -> q_gen_1786 () -> q_gen_1787 () -> q_gen_1787 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 28 () -> mem([h, cons(h, t)]) -> 27 () -> reverse([nil, nil]) -> 26 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 28 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 28 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 27 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 28 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 26 (mem([e, nil])) -> BOT -> 26 } Sat witness: Found: (() -> append([nil, l2, l2]), { l2 -> cons(b, cons(a, nil)) }) ------------------------------------------- Step 52, which took 0.197366 s (model generation: 0.190548, model checking: 0.006818): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1762, q_gen_1784) -> q_gen_1795 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { (q_gen_1755, q_gen_1758) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1787, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1787, q_gen_1752) -> q_gen_1752 (q_gen_1787, q_gen_1796) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1787 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 28 () -> mem([h, cons(h, t)]) -> 27 () -> reverse([nil, nil]) -> 27 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 28 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 28 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 30 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 28 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 27 (mem([e, nil])) -> BOT -> 27 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(a, cons(b, cons(b, nil))) ; e -> b ; l1 -> cons(a, cons(b, nil)) }) ------------------------------------------- Step 53, which took 0.202253 s (model generation: 0.199622, model checking: 0.002631): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1762, q_gen_1784) -> q_gen_1795 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1787, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1787, q_gen_1752) -> q_gen_1752 (q_gen_1787, q_gen_1796) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1787 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 28 () -> mem([h, cons(h, t)]) -> 30 () -> reverse([nil, nil]) -> 28 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 28 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 28 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 30 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 28 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 28 (mem([e, nil])) -> BOT -> 28 } Sat witness: Found: (() -> mem([h, cons(h, t)]), { h -> b ; t -> cons(a, cons(a, nil)) }) ------------------------------------------- Step 54, which took 0.201467 s (model generation: 0.197185, model checking: 0.004282): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1762, q_gen_1784) -> q_gen_1795 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1787, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1787, q_gen_1752) -> q_gen_1752 (q_gen_1787, q_gen_1796) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1787 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 28 () -> mem([h, cons(h, t)]) -> 30 () -> reverse([nil, nil]) -> 28 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 28 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 31 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 30 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 29 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 29 (mem([e, nil])) -> BOT -> 29 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, cons(a, nil)) ; h1 -> b ; l2 -> nil ; t1 -> cons(b, nil) }) ------------------------------------------- Step 55, which took 0.186905 s (model generation: 0.185408, model checking: 0.001497): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1784) -> q_gen_1784 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1762, q_gen_1784) -> q_gen_1795 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1787, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1787, q_gen_1752) -> q_gen_1752 (q_gen_1787, q_gen_1796) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1787 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 28 () -> mem([h, cons(h, t)]) -> 30 () -> reverse([nil, nil]) -> 28 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 31 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 31 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 30 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 29 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 29 (mem([e, nil])) -> BOT -> 29 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(b, cons(b, cons(b, nil))) ; _zg -> cons(b, nil) ; h1 -> a ; t1 -> cons(b, nil) }) ------------------------------------------- Step 56, which took 0.195774 s (model generation: 0.188063, model checking: 0.007711): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 29 () -> mem([h, cons(h, t)]) -> 31 () -> reverse([nil, nil]) -> 29 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 31 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 34 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 31 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 30 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 30 (mem([e, nil])) -> BOT -> 30 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, cons(a, nil)) ; h1 -> b ; l2 -> cons(a, nil) ; t1 -> cons(b, nil) }) ------------------------------------------- Step 57, which took 0.256081 s (model generation: 0.252494, model checking: 0.003587): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1829}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1775, q_gen_1774) -> q_gen_1829 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1784) -> q_gen_1784 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1829) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { (q_gen_1759, q_gen_1781) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1787, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1787, q_gen_1752) -> q_gen_1752 (q_gen_1787, q_gen_1796) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1787 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 30 () -> mem([h, cons(h, t)]) -> 31 () -> reverse([nil, nil]) -> 30 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 31 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 34 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 31 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 33 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 31 (mem([e, nil])) -> BOT -> 31 } Sat witness: Found: ((mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]), { e -> a ; h -> b ; t -> cons(a, cons(a, nil)) }) ------------------------------------------- Step 58, which took 0.189350 s (model generation: 0.188891, model checking: 0.000459): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1767, q_gen_1768, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1785, q_gen_1809}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 (q_gen_1768, q_gen_1761) -> q_gen_1767 () -> q_gen_1768 () -> q_gen_1768 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1767) -> q_gen_1756 (q_gen_1768, q_gen_1767) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1809, q_gen_1756) -> q_gen_1785 (q_gen_1809, q_gen_1785) -> q_gen_1785 (q_gen_1768, q_gen_1761) -> q_gen_1785 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 33 () -> mem([h, cons(h, t)]) -> 31 () -> reverse([nil, nil]) -> 31 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 31 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 34 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 31 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 33 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 31 (mem([e, nil])) -> BOT -> 31 } Sat witness: Found: (() -> append([nil, l2, l2]), { l2 -> cons(a, nil) }) ------------------------------------------- Step 59, which took 0.191871 s (model generation: 0.181157, model checking: 0.010714): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1829}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1775, q_gen_1774) -> q_gen_1829 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1784) -> q_gen_1784 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1829) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1787, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1787, q_gen_1752) -> q_gen_1752 (q_gen_1787, q_gen_1796) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1787 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 33 () -> mem([h, cons(h, t)]) -> 31 () -> reverse([nil, nil]) -> 31 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 34 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 34 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 32 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 33 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 32 (mem([e, nil])) -> BOT -> 32 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(b, cons(b, nil)) ; _zg -> cons(b, nil) ; h1 -> a ; t1 -> cons(b, nil) }) ------------------------------------------- Step 60, which took 0.198411 s (model generation: 0.176602, model checking: 0.021809): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795, q_gen_1808, q_gen_1809}, Q_f={q_gen_1756, q_gen_1760}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1760) -> q_gen_1756 (q_gen_1809, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1760 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1760) -> q_gen_1795 (q_gen_1776, q_gen_1795) -> q_gen_1795 (q_gen_1809, q_gen_1756) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1808, q_gen_1774) -> q_gen_1795 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { (q_gen_1755, q_gen_1758) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1770) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 33 () -> mem([h, cons(h, t)]) -> 32 () -> reverse([nil, nil]) -> 32 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 34 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 34 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 33 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 36 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 33 (mem([e, nil])) -> BOT -> 33 } Sat witness: Found: ((mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]), { e -> a ; h -> b ; t -> cons(b, cons(b, cons(a, nil))) }) ------------------------------------------- Step 61, which took 0.195702 s (model generation: 0.190044, model checking: 0.005658): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795, q_gen_1808, q_gen_1809}, Q_f={q_gen_1756, q_gen_1760}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1809, q_gen_1760) -> q_gen_1756 (q_gen_1809, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1808, q_gen_1774) -> q_gen_1760 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1760) -> q_gen_1795 (q_gen_1809, q_gen_1756) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { (q_gen_1755, q_gen_1758) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 34 () -> mem([h, cons(h, t)]) -> 33 () -> reverse([nil, nil]) -> 33 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 34 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 37 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 34 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 36 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 34 (mem([e, nil])) -> BOT -> 34 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(a, nil) ; h1 -> b ; l2 -> cons(b, nil) ; t1 -> cons(a, nil) }) ------------------------------------------- Step 62, which took 0.238575 s (model generation: 0.233074, model checking: 0.005501): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1807, q_gen_1808, q_gen_1809}, Q_f={q_gen_1756, q_gen_1760}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1760) -> q_gen_1756 (q_gen_1809, q_gen_1760) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1762, q_gen_1784) -> q_gen_1760 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 34 () -> mem([h, cons(h, t)]) -> 34 () -> reverse([nil, nil]) -> 34 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 37 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 37 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 35 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 36 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 35 (mem([e, nil])) -> BOT -> 35 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(a, cons(b, nil)) ; _zg -> nil ; h1 -> b ; t1 -> nil }) ------------------------------------------- Step 63, which took 0.265911 s (model generation: 0.262393, model checking: 0.003518): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1807, q_gen_1808, q_gen_1809}, Q_f={q_gen_1756, q_gen_1760}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1760) -> q_gen_1756 (q_gen_1809, q_gen_1760) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1762, q_gen_1784) -> q_gen_1760 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 35 () -> mem([h, cons(h, t)]) -> 35 () -> reverse([nil, nil]) -> 35 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 37 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 37 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 38 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 36 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 36 (mem([e, nil])) -> BOT -> 36 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(a, nil) ; e -> b ; l1 -> cons(b, nil) }) ------------------------------------------- Step 64, which took 0.257413 s (model generation: 0.253445, model checking: 0.003968): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795, q_gen_1808, q_gen_1809}, Q_f={q_gen_1756, q_gen_1760}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1760) -> q_gen_1756 (q_gen_1809, q_gen_1760) -> q_gen_1756 (q_gen_1809, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1795) -> q_gen_1795 (q_gen_1809, q_gen_1756) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1808, q_gen_1774) -> q_gen_1795 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { (q_gen_1755, q_gen_1758) -> q_gen_1754 () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 36 () -> mem([h, cons(h, t)]) -> 36 () -> reverse([nil, nil]) -> 36 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 37 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 37 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 38 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 39 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 37 (mem([e, nil])) -> BOT -> 37 } Sat witness: Found: ((mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]), { e -> b ; h -> a ; t -> cons(b, cons(b, nil)) }) ------------------------------------------- Step 65, which took 0.286296 s (model generation: 0.283304, model checking: 0.002992): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1767, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1767) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1761) -> q_gen_1767 (q_gen_1808, q_gen_1774) -> q_gen_1767 () -> q_gen_1845 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1767) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1762, q_gen_1767) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 37 () -> mem([h, cons(h, t)]) -> 37 () -> reverse([nil, nil]) -> 37 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 37 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 40 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 38 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 39 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 38 (mem([e, nil])) -> BOT -> 38 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(a, nil) ; h1 -> b ; l2 -> nil ; t1 -> cons(a, nil) }) ------------------------------------------- Step 66, which took 0.269767 s (model generation: 0.269567, model checking: 0.000200): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795, q_gen_1808, q_gen_1809}, Q_f={q_gen_1756, q_gen_1760}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1760) -> q_gen_1756 (q_gen_1809, q_gen_1760) -> q_gen_1756 (q_gen_1809, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1795) -> q_gen_1795 (q_gen_1809, q_gen_1756) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1808, q_gen_1774) -> q_gen_1795 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 37 () -> mem([h, cons(h, t)]) -> 37 () -> reverse([nil, nil]) -> 37 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 40 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 40 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 38 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 39 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 38 (mem([e, nil])) -> BOT -> 38 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(a, nil) ; _zg -> nil ; h1 -> b ; t1 -> nil }) ------------------------------------------- Step 67, which took 0.909523 s (model generation: 0.214834, model checking: 0.694689): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 (q_gen_1762, q_gen_1852) -> q_gen_1852 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 38 () -> mem([h, cons(h, t)]) -> 38 () -> reverse([nil, nil]) -> 38 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 40 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 43 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 39 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 40 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 39 (mem([e, nil])) -> BOT -> 39 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, cons(a, nil)) ; h1 -> b ; l2 -> cons(b, cons(a, nil)) ; t1 -> nil }) ------------------------------------------- Step 68, which took 0.252930 s (model generation: 0.245742, model checking: 0.007188): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1762, q_gen_1852) -> q_gen_1852 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1845, q_gen_1852) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 39 () -> mem([h, cons(h, t)]) -> 39 () -> reverse([nil, nil]) -> 39 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 43 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 43 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 40 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 41 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 40 (mem([e, nil])) -> BOT -> 40 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(a, cons(a, nil)) ; _zg -> nil ; h1 -> b ; t1 -> nil }) ------------------------------------------- Step 69, which took 0.257880 s (model generation: 0.250663, model checking: 0.007217): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 (q_gen_1762, q_gen_1852) -> q_gen_1852 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1852) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1845, q_gen_1852) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 40 () -> mem([h, cons(h, t)]) -> 40 () -> reverse([nil, nil]) -> 40 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 43 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 46 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 41 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 42 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 41 (mem([e, nil])) -> BOT -> 41 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, nil) ; h1 -> b ; l2 -> cons(a, nil) ; t1 -> nil }) ------------------------------------------- Step 70, which took 0.260307 s (model generation: 0.255086, model checking: 0.005221): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1762, q_gen_1852) -> q_gen_1852 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1807) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1845, q_gen_1852) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 41 () -> mem([h, cons(h, t)]) -> 41 () -> reverse([nil, nil]) -> 41 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 46 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 46 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 42 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 43 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 42 (mem([e, nil])) -> BOT -> 42 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(a, nil) ; _zg -> cons(a, nil) ; h1 -> b ; t1 -> nil }) ------------------------------------------- Step 71, which took 0.299039 s (model generation: 0.291113, model checking: 0.007926): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756, q_gen_1760}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1762, q_gen_1852) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1760) -> q_gen_1756 (q_gen_1776, q_gen_1807) -> q_gen_1756 () -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1775, q_gen_1774) -> q_gen_1760 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1756) -> q_gen_1807 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1809, q_gen_1760) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1845, q_gen_1852) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 42 () -> mem([h, cons(h, t)]) -> 42 () -> reverse([nil, nil]) -> 42 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 46 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 49 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 43 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 44 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 43 (mem([e, nil])) -> BOT -> 43 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(a, cons(b, nil)) ; h1 -> a ; l2 -> cons(a, cons(b, nil)) ; t1 -> cons(a, cons(b, nil)) }) ------------------------------------------- Step 72, which took 0.356946 s (model generation: 0.350440, model checking: 0.006506): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756, q_gen_1760}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1809, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1760) -> q_gen_1760 (q_gen_1809, q_gen_1760) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1808, q_gen_1774) -> q_gen_1760 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1809, q_gen_1756) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1845, q_gen_1761) -> q_gen_1795 (q_gen_1845, q_gen_1784) -> q_gen_1795 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 43 () -> mem([h, cons(h, t)]) -> 43 () -> reverse([nil, nil]) -> 43 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 49 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 49 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 44 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 45 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 44 (mem([e, nil])) -> BOT -> 44 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(a, cons(a, nil)) ; _zg -> cons(a, nil) ; h1 -> b ; t1 -> cons(a, nil) }) ------------------------------------------- Step 73, which took 0.384746 s (model generation: 0.376514, model checking: 0.008232): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756, q_gen_1760}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1762, q_gen_1784) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1808, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1760) -> q_gen_1756 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1809, q_gen_1795) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1775, q_gen_1774) -> q_gen_1760 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1756) -> q_gen_1795 (q_gen_1809, q_gen_1760) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1845, q_gen_1761) -> q_gen_1795 (q_gen_1845, q_gen_1784) -> q_gen_1795 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 44 () -> mem([h, cons(h, t)]) -> 44 () -> reverse([nil, nil]) -> 44 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 49 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 52 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 45 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 46 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 45 (mem([e, nil])) -> BOT -> 45 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, cons(b, cons(b, nil))) ; h1 -> a ; l2 -> cons(a, cons(a, cons(b, nil))) ; t1 -> cons(b, nil) }) ------------------------------------------- Step 74, which took 0.515199 s (model generation: 0.509144, model checking: 0.006055): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1845, q_gen_1761) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1756) -> q_gen_1807 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1809, q_gen_1773) -> q_gen_1807 (q_gen_1845, q_gen_1784) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 45 () -> mem([h, cons(h, t)]) -> 45 () -> reverse([nil, nil]) -> 45 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 52 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 52 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 46 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 47 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 46 (mem([e, nil])) -> BOT -> 46 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(b, cons(a, nil)) ; _zg -> nil ; h1 -> b ; t1 -> nil }) ------------------------------------------- Step 75, which took 0.478743 s (model generation: 0.470927, model checking: 0.007816): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1783, q_gen_1784, q_gen_1795, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756, q_gen_1783}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1762, q_gen_1784) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1808, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1809, q_gen_1783) -> q_gen_1783 (q_gen_1809, q_gen_1795) -> q_gen_1783 (q_gen_1762, q_gen_1784) -> q_gen_1783 (q_gen_1808, q_gen_1774) -> q_gen_1783 (q_gen_1776, q_gen_1783) -> q_gen_1795 (q_gen_1809, q_gen_1756) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1845, q_gen_1761) -> q_gen_1795 (q_gen_1845, q_gen_1784) -> q_gen_1795 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 46 () -> mem([h, cons(h, t)]) -> 46 () -> reverse([nil, nil]) -> 46 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 52 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 55 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 47 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 48 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 47 (mem([e, nil])) -> BOT -> 47 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, cons(b, cons(b, nil))) ; h1 -> b ; l2 -> cons(a, nil) ; t1 -> cons(b, cons(b, nil)) }) ------------------------------------------- Step 76, which took 0.516974 s (model generation: 0.511143, model checking: 0.005831): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756, q_gen_1760}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1784) -> q_gen_1784 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1808, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1760) -> q_gen_1756 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1809, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1775, q_gen_1774) -> q_gen_1760 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1756) -> q_gen_1795 (q_gen_1809, q_gen_1760) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1845, q_gen_1761) -> q_gen_1795 (q_gen_1845, q_gen_1784) -> q_gen_1795 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 47 () -> mem([h, cons(h, t)]) -> 47 () -> reverse([nil, nil]) -> 47 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 55 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 55 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 48 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 49 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 48 (mem([e, nil])) -> BOT -> 48 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(b, cons(a, nil)) ; _zg -> cons(b, nil) ; h1 -> a ; t1 -> cons(b, nil) }) ------------------------------------------- Step 77, which took 0.756541 s (model generation: 0.754347, model checking: 0.002194): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1762, q_gen_1852) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1845, q_gen_1852) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812, q_gen_1880}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1880 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1812, q_gen_1811) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 (q_gen_1880, q_gen_1798) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 48 () -> mem([h, cons(h, t)]) -> 48 () -> reverse([nil, nil]) -> 48 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 55 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 55 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 48 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 49 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 51 (mem([e, nil])) -> BOT -> 49 } Sat witness: Found: ((mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]), { e -> b ; h -> a ; t -> cons(a, cons(a, nil)) }) ------------------------------------------- Step 78, which took 0.720238 s (model generation: 0.712567, model checking: 0.007671): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1784) -> q_gen_1784 (q_gen_1775, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1845, q_gen_1784) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1809, q_gen_1773) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1845, q_gen_1761) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1797) -> q_gen_1752 (q_gen_1812, q_gen_1797) -> q_gen_1752 (q_gen_1812, q_gen_1811) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1799, q_gen_1798) -> q_gen_1797 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 48 () -> mem([h, cons(h, t)]) -> 48 () -> reverse([nil, nil]) -> 48 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 55 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 55 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 51 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 49 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 51 (mem([e, nil])) -> BOT -> 49 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(a, cons(a, nil)) ; e -> b ; l1 -> cons(b, nil) }) ------------------------------------------- Step 79, which took 0.839354 s (model generation: 0.832632, model checking: 0.006722): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1762, q_gen_1852) -> q_gen_1852 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1809, q_gen_1773) -> q_gen_1773 (q_gen_1845, q_gen_1852) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1756) -> q_gen_1807 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1812, q_gen_1811) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 49 () -> mem([h, cons(h, t)]) -> 49 () -> reverse([nil, nil]) -> 49 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 55 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 55 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 54 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 50 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 52 (mem([e, nil])) -> BOT -> 50 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(a, cons(a, cons(a, nil))) ; e -> b ; l1 -> cons(b, cons(b, nil)) }) ------------------------------------------- Step 80, which took 1.017970 s (model generation: 1.011640, model checking: 0.006330): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756, q_gen_1760}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1784) -> q_gen_1784 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1808, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1760) -> q_gen_1756 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1809, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1775, q_gen_1774) -> q_gen_1760 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1756) -> q_gen_1795 (q_gen_1809, q_gen_1760) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1845, q_gen_1761) -> q_gen_1795 (q_gen_1845, q_gen_1784) -> q_gen_1795 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1812, q_gen_1811) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1778, q_gen_1811) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1812 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 50 () -> mem([h, cons(h, t)]) -> 50 () -> reverse([nil, nil]) -> 50 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 55 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 55 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 57 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 51 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 53 (mem([e, nil])) -> BOT -> 51 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(a, cons(a, nil)) ; e -> b ; l1 -> cons(b, cons(b, nil)) }) ------------------------------------------- Step 81, which took 0.976485 s (model generation: 0.969819, model checking: 0.006666): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1762, q_gen_1852) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1762, q_gen_1852) -> q_gen_1773 (q_gen_1845, q_gen_1852) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1809, q_gen_1773) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812, q_gen_1870}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1812, q_gen_1811) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 (q_gen_1870, q_gen_1752) -> q_gen_1811 (q_gen_1870, q_gen_1811) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1870 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 51 () -> mem([h, cons(h, t)]) -> 51 () -> reverse([nil, nil]) -> 51 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 55 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 58 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 57 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 52 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 54 (mem([e, nil])) -> BOT -> 52 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, cons(b, cons(a, nil))) ; h1 -> a ; l2 -> cons(a, nil) ; t1 -> cons(b, cons(b, nil)) }) ------------------------------------------- Step 82, which took 0.963816 s (model generation: 0.958503, model checking: 0.005313): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1762, q_gen_1852) -> q_gen_1852 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1809, q_gen_1773) -> q_gen_1773 (q_gen_1845, q_gen_1852) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812, q_gen_1870}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1812, q_gen_1811) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 (q_gen_1870, q_gen_1752) -> q_gen_1811 (q_gen_1870, q_gen_1811) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1870 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 52 () -> mem([h, cons(h, t)]) -> 52 () -> reverse([nil, nil]) -> 52 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 58 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 58 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 57 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 53 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 55 (mem([e, nil])) -> BOT -> 53 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(a, cons(b, nil)) ; _zg -> cons(a, nil) ; h1 -> b ; t1 -> nil }) ------------------------------------------- Step 83, which took 0.892081 s (model generation: 0.883615, model checking: 0.008466): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756, q_gen_1760}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1784) -> q_gen_1784 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1808, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1760) -> q_gen_1756 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1809, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1775, q_gen_1774) -> q_gen_1760 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1756) -> q_gen_1795 (q_gen_1809, q_gen_1760) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1845, q_gen_1761) -> q_gen_1795 (q_gen_1845, q_gen_1784) -> q_gen_1795 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812, q_gen_1870}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1812, q_gen_1811) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1778, q_gen_1811) -> q_gen_1796 (q_gen_1870, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1811 (q_gen_1812, q_gen_1796) -> q_gen_1811 (q_gen_1870, q_gen_1752) -> q_gen_1811 (q_gen_1870, q_gen_1811) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1870 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 53 () -> mem([h, cons(h, t)]) -> 53 () -> reverse([nil, nil]) -> 53 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 58 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 58 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 60 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 54 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 56 (mem([e, nil])) -> BOT -> 54 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(b, cons(b, cons(b, nil))) ; e -> a ; l1 -> cons(a, cons(a, cons(b, nil))) }) ------------------------------------------- Step 84, which took 1.029033 s (model generation: 1.022276, model checking: 0.006757): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1808, q_gen_1809, q_gen_1844, q_gen_1845}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1762, q_gen_1784) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1808, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1776, q_gen_1844) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1844) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1809, q_gen_1773) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1845, q_gen_1761) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1809 () -> q_gen_1809 (q_gen_1776, q_gen_1756) -> q_gen_1844 (q_gen_1845, q_gen_1784) -> q_gen_1844 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812, q_gen_1818, q_gen_1870}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1812, q_gen_1818) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1870, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 (q_gen_1812, q_gen_1796) -> q_gen_1818 (q_gen_1870, q_gen_1752) -> q_gen_1818 (q_gen_1870, q_gen_1818) -> q_gen_1818 () -> q_gen_1870 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 54 () -> mem([h, cons(h, t)]) -> 54 () -> reverse([nil, nil]) -> 54 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 58 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 61 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 60 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 55 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 57 (mem([e, nil])) -> BOT -> 55 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, cons(b, nil)) ; h1 -> b ; l2 -> cons(b, nil) ; t1 -> cons(b, nil) }) ------------------------------------------- Step 85, which took 1.473100 s (model generation: 1.467851, model checking: 0.005249): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1762, q_gen_1852) -> q_gen_1852 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1807) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1845, q_gen_1852) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1777, q_gen_1778, q_gen_1796, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812, q_gen_1870}, Q_f={q_gen_1752, q_gen_1777, q_gen_1796}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1777) -> q_gen_1752 (q_gen_1812, q_gen_1797) -> q_gen_1752 (q_gen_1870, q_gen_1777) -> q_gen_1752 () -> q_gen_1752 (q_gen_1778, q_gen_1752) -> q_gen_1777 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1797) -> q_gen_1796 (q_gen_1812, q_gen_1777) -> q_gen_1796 (q_gen_1778, q_gen_1796) -> q_gen_1797 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1812, q_gen_1796) -> q_gen_1797 (q_gen_1870, q_gen_1752) -> q_gen_1797 (q_gen_1870, q_gen_1797) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 () -> q_gen_1870 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 55 () -> mem([h, cons(h, t)]) -> 55 () -> reverse([nil, nil]) -> 55 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 61 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 61 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 60 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 56 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 58 (mem([e, nil])) -> BOT -> 56 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(a, cons(b, cons(b, nil))) ; _zg -> cons(a, cons(b, nil)) ; h1 -> b ; t1 -> cons(a, nil) }) ------------------------------------------- Step 86, which took 1.405617 s (model generation: 1.395787, model checking: 0.009830): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1783, q_gen_1784, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1762, q_gen_1784) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1808, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1776, q_gen_1783) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1783) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1809, q_gen_1773) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1762, q_gen_1784) -> q_gen_1783 (q_gen_1762, q_gen_1784) -> q_gen_1783 (q_gen_1845, q_gen_1761) -> q_gen_1783 (q_gen_1845, q_gen_1784) -> q_gen_1783 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812, q_gen_1818, q_gen_1870}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1812, q_gen_1818) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1870, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 (q_gen_1812, q_gen_1796) -> q_gen_1818 (q_gen_1870, q_gen_1752) -> q_gen_1818 (q_gen_1870, q_gen_1818) -> q_gen_1818 () -> q_gen_1870 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 56 () -> mem([h, cons(h, t)]) -> 56 () -> reverse([nil, nil]) -> 56 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 61 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 61 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 63 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 57 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 59 (mem([e, nil])) -> BOT -> 57 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(b, cons(b, cons(b, nil))) ; e -> a ; l1 -> cons(a, cons(a, nil)) }) ------------------------------------------- Step 87, which took 1.348158 s (model generation: 1.343439, model checking: 0.004719): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1783, q_gen_1784, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1762, q_gen_1784) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1808, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1776, q_gen_1783) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1783) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1809, q_gen_1773) -> q_gen_1773 (q_gen_1845, q_gen_1761) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1762, q_gen_1784) -> q_gen_1783 (q_gen_1762, q_gen_1784) -> q_gen_1783 (q_gen_1845, q_gen_1784) -> q_gen_1783 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812, q_gen_1870, q_gen_1871}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1812, q_gen_1871) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1870, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1870 (q_gen_1870, q_gen_1752) -> q_gen_1871 (q_gen_1870, q_gen_1871) -> q_gen_1871 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 57 () -> mem([h, cons(h, t)]) -> 57 () -> reverse([nil, nil]) -> 57 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 61 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 64 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 63 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 58 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 60 (mem([e, nil])) -> BOT -> 58 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(a, nil) ; h1 -> b ; l2 -> nil ; t1 -> nil }) ------------------------------------------- Step 88, which took 1.676601 s (model generation: 1.667591, model checking: 0.009010): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1762, q_gen_1852) -> q_gen_1852 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1807) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1845, q_gen_1852) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1777, q_gen_1778, q_gen_1796, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1812, q_gen_1870}, Q_f={q_gen_1752, q_gen_1777, q_gen_1796}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1777) -> q_gen_1752 (q_gen_1870, q_gen_1777) -> q_gen_1752 () -> q_gen_1752 (q_gen_1778, q_gen_1752) -> q_gen_1777 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1797) -> q_gen_1796 (q_gen_1812, q_gen_1777) -> q_gen_1796 (q_gen_1812, q_gen_1797) -> q_gen_1796 (q_gen_1870, q_gen_1796) -> q_gen_1796 (q_gen_1778, q_gen_1796) -> q_gen_1797 (q_gen_1812, q_gen_1752) -> q_gen_1797 (q_gen_1812, q_gen_1796) -> q_gen_1797 (q_gen_1870, q_gen_1752) -> q_gen_1797 (q_gen_1870, q_gen_1797) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 () -> q_gen_1812 () -> q_gen_1870 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 58 () -> mem([h, cons(h, t)]) -> 58 () -> reverse([nil, nil]) -> 58 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 64 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 64 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 63 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 59 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 61 (mem([e, nil])) -> BOT -> 59 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(b, cons(b, cons(b, nil))) ; _zg -> cons(b, cons(b, nil)) ; h1 -> b ; t1 -> cons(b, nil) }) ------------------------------------------- Step 89, which took 1.595909 s (model generation: 1.588606, model checking: 0.007303): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1829, q_gen_1845}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1775 (q_gen_1775, q_gen_1774) -> q_gen_1829 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1784) -> q_gen_1784 (q_gen_1775, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1829) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1845, q_gen_1761) -> q_gen_1773 (q_gen_1845, q_gen_1784) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1776 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1777, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812, q_gen_1833, q_gen_1870}, Q_f={q_gen_1752, q_gen_1777, q_gen_1833}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1777) -> q_gen_1752 (q_gen_1812, q_gen_1811) -> q_gen_1752 (q_gen_1870, q_gen_1777) -> q_gen_1752 () -> q_gen_1752 (q_gen_1778, q_gen_1752) -> q_gen_1777 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1778, q_gen_1833) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1870, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1811 (q_gen_1812, q_gen_1833) -> q_gen_1811 (q_gen_1870, q_gen_1752) -> q_gen_1811 (q_gen_1870, q_gen_1811) -> q_gen_1811 () -> q_gen_1812 (q_gen_1778, q_gen_1811) -> q_gen_1833 (q_gen_1812, q_gen_1777) -> q_gen_1833 () -> q_gen_1870 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 59 () -> mem([h, cons(h, t)]) -> 59 () -> reverse([nil, nil]) -> 59 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 64 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 64 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 66 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 60 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 62 (mem([e, nil])) -> BOT -> 60 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(b, cons(b, nil)) ; e -> a ; l1 -> cons(b, cons(a, nil)) }) ------------------------------------------- Step 90, which took 1.904920 s (model generation: 1.899011, model checking: 0.005909): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1762, q_gen_1784) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1845, q_gen_1784) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1809, q_gen_1773) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1845, q_gen_1761) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812, q_gen_1870, q_gen_1871, q_gen_1880}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1880 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1871) -> q_gen_1752 (q_gen_1812, q_gen_1871) -> q_gen_1752 (q_gen_1870, q_gen_1796) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1870 (q_gen_1870, q_gen_1752) -> q_gen_1871 (q_gen_1870, q_gen_1871) -> q_gen_1871 (q_gen_1880, q_gen_1798) -> q_gen_1871 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 60 () -> mem([h, cons(h, t)]) -> 60 () -> reverse([nil, nil]) -> 60 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 64 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 67 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 66 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 61 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 63 (mem([e, nil])) -> BOT -> 61 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(a, cons(b, nil)) ; h1 -> b ; l2 -> cons(b, nil) ; t1 -> nil }) ------------------------------------------- Step 91, which took 1.773437 s (model generation: 1.767665, model checking: 0.005772): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1762, q_gen_1852) -> q_gen_1852 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1807) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1845, q_gen_1852) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1777, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812, q_gen_1870}, Q_f={q_gen_1752, q_gen_1777}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 () -> q_gen_1752 (q_gen_1778, q_gen_1752) -> q_gen_1777 (q_gen_1778, q_gen_1777) -> q_gen_1777 (q_gen_1778, q_gen_1797) -> q_gen_1777 (q_gen_1812, q_gen_1797) -> q_gen_1777 (q_gen_1870, q_gen_1777) -> q_gen_1777 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1811) -> q_gen_1797 (q_gen_1812, q_gen_1811) -> q_gen_1797 (q_gen_1870, q_gen_1752) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 (q_gen_1812, q_gen_1752) -> q_gen_1811 (q_gen_1812, q_gen_1777) -> q_gen_1811 (q_gen_1870, q_gen_1797) -> q_gen_1811 (q_gen_1870, q_gen_1811) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1870 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 61 () -> mem([h, cons(h, t)]) -> 61 () -> reverse([nil, nil]) -> 61 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 67 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 67 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 66 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 62 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 64 (mem([e, nil])) -> BOT -> 62 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(a, cons(b, nil)) ; _zg -> cons(a, nil) ; h1 -> b ; t1 -> cons(a, nil) }) ------------------------------------------- Step 92, which took 1.906559 s (model generation: 1.896504, model checking: 0.010055): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1762, q_gen_1852) -> q_gen_1852 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1807) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1845, q_gen_1852) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1777, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812, q_gen_1870}, Q_f={q_gen_1752, q_gen_1777}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1777) -> q_gen_1752 (q_gen_1778, q_gen_1797) -> q_gen_1752 (q_gen_1870, q_gen_1811) -> q_gen_1752 () -> q_gen_1752 (q_gen_1778, q_gen_1752) -> q_gen_1777 (q_gen_1812, q_gen_1797) -> q_gen_1777 (q_gen_1870, q_gen_1777) -> q_gen_1777 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1812, q_gen_1811) -> q_gen_1797 (q_gen_1870, q_gen_1752) -> q_gen_1797 (q_gen_1870, q_gen_1797) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 (q_gen_1812, q_gen_1777) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1870 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 62 () -> mem([h, cons(h, t)]) -> 62 () -> reverse([nil, nil]) -> 62 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 67 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 67 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 69 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 63 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 65 (mem([e, nil])) -> BOT -> 63 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(b, cons(b, nil)) ; e -> a ; l1 -> cons(a, nil) }) ------------------------------------------- Step 93, which took 2.145582 s (model generation: 2.141212, model checking: 0.004370): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1766, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756, q_gen_1766}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1784) -> q_gen_1784 (q_gen_1775, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1766) -> q_gen_1756 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1766 (q_gen_1762, q_gen_1761) -> q_gen_1766 (q_gen_1775, q_gen_1774) -> q_gen_1766 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1756) -> q_gen_1795 (q_gen_1809, q_gen_1766) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1845, q_gen_1761) -> q_gen_1795 (q_gen_1845, q_gen_1784) -> q_gen_1795 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812, q_gen_1870, q_gen_1871, q_gen_1880}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1880 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1871) -> q_gen_1752 (q_gen_1812, q_gen_1871) -> q_gen_1752 (q_gen_1870, q_gen_1796) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1870 (q_gen_1870, q_gen_1752) -> q_gen_1871 (q_gen_1870, q_gen_1871) -> q_gen_1871 (q_gen_1880, q_gen_1798) -> q_gen_1871 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 63 () -> mem([h, cons(h, t)]) -> 63 () -> reverse([nil, nil]) -> 63 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 67 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 70 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 69 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 64 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 66 (mem([e, nil])) -> BOT -> 64 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(a, cons(a, nil)) ; h1 -> a ; l2 -> cons(a, cons(a, nil)) ; t1 -> nil }) ------------------------------------------- Step 94, which took 1.739998 s (model generation: 1.731931, model checking: 0.008067): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1762, q_gen_1784) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1809, q_gen_1773) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1845, q_gen_1761) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1845, q_gen_1784) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812, q_gen_1870, q_gen_1871, q_gen_1880}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1880 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1871) -> q_gen_1752 (q_gen_1812, q_gen_1871) -> q_gen_1752 (q_gen_1870, q_gen_1796) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1870 (q_gen_1870, q_gen_1752) -> q_gen_1871 (q_gen_1870, q_gen_1871) -> q_gen_1871 (q_gen_1880, q_gen_1798) -> q_gen_1871 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 64 () -> mem([h, cons(h, t)]) -> 64 () -> reverse([nil, nil]) -> 64 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 70 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 70 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 69 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 65 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 67 (mem([e, nil])) -> BOT -> 65 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(a, cons(b, nil)) ; _zg -> cons(a, cons(b, nil)) ; h1 -> b ; t1 -> cons(b, nil) }) ------------------------------------------- Step 95, which took 2.877943 s (model generation: 2.865474, model checking: 0.012469): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1808, q_gen_1809, q_gen_1829, q_gen_1845}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1775, q_gen_1774) -> q_gen_1829 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1762, q_gen_1784) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1845, q_gen_1784) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1809, q_gen_1773) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1845, q_gen_1761) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 (q_gen_1775, q_gen_1829) -> q_gen_1773 (q_gen_1808, q_gen_1829) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812, q_gen_1870, q_gen_1871, q_gen_1880}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1880 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1871) -> q_gen_1752 (q_gen_1812, q_gen_1871) -> q_gen_1752 (q_gen_1870, q_gen_1796) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1870 (q_gen_1870, q_gen_1752) -> q_gen_1871 (q_gen_1870, q_gen_1871) -> q_gen_1871 (q_gen_1880, q_gen_1798) -> q_gen_1871 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 65 () -> mem([h, cons(h, t)]) -> 65 () -> reverse([nil, nil]) -> 65 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 70 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 70 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 72 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 66 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 68 (mem([e, nil])) -> BOT -> 66 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(a, cons(a, nil)) ; e -> b ; l1 -> cons(a, cons(b, nil)) }) ------------------------------------------- Step 96, which took 2.645882 s (model generation: 2.641243, model checking: 0.004639): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1772, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756, q_gen_1772}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1762, q_gen_1784) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1775, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1772) -> q_gen_1772 (q_gen_1762, q_gen_1784) -> q_gen_1772 (q_gen_1775, q_gen_1774) -> q_gen_1772 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1756) -> q_gen_1795 (q_gen_1809, q_gen_1772) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1845, q_gen_1761) -> q_gen_1795 (q_gen_1845, q_gen_1784) -> q_gen_1795 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812, q_gen_1870, q_gen_1871, q_gen_1880}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1880 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1812, q_gen_1871) -> q_gen_1752 (q_gen_1870, q_gen_1796) -> q_gen_1752 (q_gen_1880, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1870 (q_gen_1778, q_gen_1871) -> q_gen_1871 (q_gen_1870, q_gen_1752) -> q_gen_1871 (q_gen_1870, q_gen_1871) -> q_gen_1871 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 66 () -> mem([h, cons(h, t)]) -> 66 () -> reverse([nil, nil]) -> 66 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 70 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 73 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 72 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 67 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 69 (mem([e, nil])) -> BOT -> 67 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, cons(b, cons(b, nil))) ; h1 -> b ; l2 -> cons(b, nil) ; t1 -> cons(b, cons(b, nil)) }) ------------------------------------------- Step 97, which took 2.828067 s (model generation: 2.818088, model checking: 0.009979): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1808, q_gen_1809, q_gen_1829, q_gen_1845}, Q_f={q_gen_1756}, Delta= { () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1775, q_gen_1774) -> q_gen_1829 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1784) -> q_gen_1784 (q_gen_1775, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1845, q_gen_1784) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1756) -> q_gen_1773 (q_gen_1809, q_gen_1773) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1845, q_gen_1761) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 (q_gen_1775, q_gen_1829) -> q_gen_1773 (q_gen_1808, q_gen_1829) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1812, q_gen_1870, q_gen_1871, q_gen_1880}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1880 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1812, q_gen_1871) -> q_gen_1752 (q_gen_1870, q_gen_1796) -> q_gen_1752 (q_gen_1880, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1812, q_gen_1752) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 () -> q_gen_1812 () -> q_gen_1870 (q_gen_1778, q_gen_1871) -> q_gen_1871 (q_gen_1870, q_gen_1752) -> q_gen_1871 (q_gen_1870, q_gen_1871) -> q_gen_1871 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 67 () -> mem([h, cons(h, t)]) -> 67 () -> reverse([nil, nil]) -> 67 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 73 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 73 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 72 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 68 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 70 (mem([e, nil])) -> BOT -> 68 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(a, cons(a, cons(b, cons(b, nil)))) ; _zg -> cons(a, cons(a, cons(b, nil))) ; h1 -> b ; t1 -> cons(b, cons(a, nil)) }) ------------------------------------------- Step 98, which took 2.617327 s (model generation: 2.606689, model checking: 0.010638): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1844, q_gen_1845, q_gen_1852}, Q_f={q_gen_1756}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1775, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1762, q_gen_1852) -> q_gen_1852 (q_gen_1808, q_gen_1774) -> q_gen_1852 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1844) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1809, q_gen_1844) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1775, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1809, q_gen_1756) -> q_gen_1807 (q_gen_1762, q_gen_1852) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 (q_gen_1762, q_gen_1852) -> q_gen_1844 (q_gen_1845, q_gen_1761) -> q_gen_1844 (q_gen_1845, q_gen_1852) -> q_gen_1844 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812, q_gen_1832, q_gen_1870, q_gen_1880}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1880 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1812, q_gen_1832) -> q_gen_1752 (q_gen_1870, q_gen_1811) -> q_gen_1752 (q_gen_1799, q_gen_1798) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1812, q_gen_1752) -> q_gen_1811 () -> q_gen_1812 (q_gen_1778, q_gen_1811) -> q_gen_1832 (q_gen_1778, q_gen_1832) -> q_gen_1832 (q_gen_1812, q_gen_1811) -> q_gen_1832 (q_gen_1870, q_gen_1752) -> q_gen_1832 (q_gen_1870, q_gen_1832) -> q_gen_1832 (q_gen_1880, q_gen_1798) -> q_gen_1832 () -> q_gen_1870 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 68 () -> mem([h, cons(h, t)]) -> 68 () -> reverse([nil, nil]) -> 68 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 73 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 73 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 75 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 69 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 71 (mem([e, nil])) -> BOT -> 69 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(b, cons(b, cons(b, cons(b, nil)))) ; e -> a ; l1 -> cons(a, cons(b, cons(a, cons(b, nil)))) }) ------------------------------------------- Step 99, which took 3.273875 s (model generation: 3.258239, model checking: 0.015636): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1772, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756, q_gen_1772}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1784) -> q_gen_1784 (q_gen_1775, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1809, q_gen_1795) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1776, q_gen_1772) -> q_gen_1772 (q_gen_1762, q_gen_1784) -> q_gen_1772 (q_gen_1775, q_gen_1774) -> q_gen_1772 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1776, q_gen_1756) -> q_gen_1795 (q_gen_1809, q_gen_1772) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1845, q_gen_1761) -> q_gen_1795 (q_gen_1845, q_gen_1784) -> q_gen_1795 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812, q_gen_1869, q_gen_1870}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1797) -> q_gen_1752 (q_gen_1812, q_gen_1869) -> q_gen_1752 (q_gen_1870, q_gen_1811) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1799, q_gen_1798) -> q_gen_1797 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 (q_gen_1812, q_gen_1797) -> q_gen_1811 (q_gen_1870, q_gen_1869) -> q_gen_1811 () -> q_gen_1812 (q_gen_1778, q_gen_1869) -> q_gen_1869 (q_gen_1812, q_gen_1811) -> q_gen_1869 (q_gen_1870, q_gen_1752) -> q_gen_1869 (q_gen_1870, q_gen_1797) -> q_gen_1869 () -> q_gen_1870 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 69 () -> mem([h, cons(h, t)]) -> 69 () -> reverse([nil, nil]) -> 69 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 73 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 76 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 75 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 70 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 72 (mem([e, nil])) -> BOT -> 70 } Sat witness: Found: ((append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]), { _ug -> cons(b, cons(b, nil)) ; h1 -> a ; l2 -> cons(a, cons(b, nil)) ; t1 -> cons(b, nil) }) ------------------------------------------- Step 100, which took 3.978933 s (model generation: 3.971886, model checking: 0.007047): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1761, q_gen_1762, q_gen_1773, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1808, q_gen_1809, q_gen_1817, q_gen_1845}, Q_f={q_gen_1756, q_gen_1773}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 (q_gen_1808, q_gen_1774) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1784) -> q_gen_1784 (q_gen_1775, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1773) -> q_gen_1756 (q_gen_1776, q_gen_1817) -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 (q_gen_1808, q_gen_1774) -> q_gen_1756 () -> q_gen_1756 (q_gen_1809, q_gen_1817) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1762, q_gen_1784) -> q_gen_1773 (q_gen_1775, q_gen_1774) -> q_gen_1773 () -> q_gen_1776 () -> q_gen_1776 () -> q_gen_1809 () -> q_gen_1809 (q_gen_1776, q_gen_1756) -> q_gen_1817 (q_gen_1809, q_gen_1773) -> q_gen_1817 (q_gen_1845, q_gen_1761) -> q_gen_1817 (q_gen_1845, q_gen_1784) -> q_gen_1817 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1797, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812, q_gen_1870, q_gen_1871}, Q_f={q_gen_1752}, Delta= { () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1778, q_gen_1797) -> q_gen_1752 (q_gen_1812, q_gen_1871) -> q_gen_1752 (q_gen_1870, q_gen_1811) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1870, q_gen_1797) -> q_gen_1797 (q_gen_1799, q_gen_1798) -> q_gen_1797 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 (q_gen_1812, q_gen_1797) -> q_gen_1811 () -> q_gen_1812 () -> q_gen_1870 (q_gen_1778, q_gen_1871) -> q_gen_1871 (q_gen_1812, q_gen_1811) -> q_gen_1871 (q_gen_1870, q_gen_1752) -> q_gen_1871 (q_gen_1870, q_gen_1871) -> q_gen_1871 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 70 () -> mem([h, cons(h, t)]) -> 70 () -> reverse([nil, nil]) -> 70 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 76 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 76 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 75 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 71 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 73 (mem([e, nil])) -> BOT -> 71 } Sat witness: Found: ((append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]), { _ah -> cons(b, cons(b, cons(b, nil))) ; _zg -> nil ; h1 -> b ; t1 -> nil }) ------------------------------------------- Step 101, which took 3.028834 s (model generation: 3.018903, model checking: 0.009931): Model: |_ { append -> {{{ Q={q_gen_1756, q_gen_1760, q_gen_1761, q_gen_1762, q_gen_1774, q_gen_1775, q_gen_1776, q_gen_1784, q_gen_1795, q_gen_1807, q_gen_1808, q_gen_1809, q_gen_1845}, Q_f={q_gen_1756, q_gen_1760}, Delta= { (q_gen_1775, q_gen_1774) -> q_gen_1774 () -> q_gen_1774 () -> q_gen_1775 () -> q_gen_1808 (q_gen_1762, q_gen_1761) -> q_gen_1761 () -> q_gen_1761 () -> q_gen_1762 () -> q_gen_1762 (q_gen_1762, q_gen_1784) -> q_gen_1784 (q_gen_1775, q_gen_1774) -> q_gen_1784 (q_gen_1808, q_gen_1774) -> q_gen_1784 () -> q_gen_1845 () -> q_gen_1845 (q_gen_1776, q_gen_1756) -> q_gen_1756 (q_gen_1776, q_gen_1760) -> q_gen_1756 (q_gen_1776, q_gen_1795) -> q_gen_1756 (q_gen_1809, q_gen_1795) -> q_gen_1756 (q_gen_1809, q_gen_1807) -> q_gen_1756 (q_gen_1762, q_gen_1784) -> q_gen_1756 (q_gen_1762, q_gen_1761) -> q_gen_1756 () -> q_gen_1756 (q_gen_1809, q_gen_1756) -> q_gen_1760 (q_gen_1762, q_gen_1761) -> q_gen_1760 (q_gen_1775, q_gen_1774) -> q_gen_1760 () -> q_gen_1776 () -> q_gen_1776 (q_gen_1809, q_gen_1760) -> q_gen_1795 (q_gen_1762, q_gen_1784) -> q_gen_1795 (q_gen_1845, q_gen_1784) -> q_gen_1795 (q_gen_1776, q_gen_1807) -> q_gen_1807 (q_gen_1845, q_gen_1761) -> q_gen_1807 (q_gen_1808, q_gen_1774) -> q_gen_1807 () -> q_gen_1809 () -> q_gen_1809 } Datatype: Convolution form: left }}} ; mem -> {{{ Q={q_gen_1753, q_gen_1754, q_gen_1755, q_gen_1758, q_gen_1759, q_gen_1763, q_gen_1770, q_gen_1781}, Q_f={q_gen_1753}, Delta= { () -> q_gen_1754 () -> q_gen_1755 (q_gen_1755, q_gen_1754) -> q_gen_1758 (q_gen_1755, q_gen_1758) -> q_gen_1758 () -> q_gen_1759 (q_gen_1755, q_gen_1770) -> q_gen_1770 (q_gen_1755, q_gen_1781) -> q_gen_1770 (q_gen_1759, q_gen_1758) -> q_gen_1770 (q_gen_1759, q_gen_1770) -> q_gen_1770 (q_gen_1759, q_gen_1754) -> q_gen_1781 (q_gen_1759, q_gen_1781) -> q_gen_1781 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1754) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1759, q_gen_1781) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1753 (q_gen_1755, q_gen_1758) -> q_gen_1753 (q_gen_1755, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1781) -> q_gen_1753 (q_gen_1759, q_gen_1758) -> q_gen_1753 (q_gen_1759, q_gen_1770) -> q_gen_1753 (q_gen_1755, q_gen_1754) -> q_gen_1763 (q_gen_1755, q_gen_1758) -> q_gen_1763 () -> q_gen_1763 (q_gen_1759, q_gen_1754) -> q_gen_1763 (q_gen_1759, q_gen_1781) -> q_gen_1763 () -> q_gen_1763 } Datatype: Convolution form: left }}} ; reverse -> {{{ Q={q_gen_1752, q_gen_1778, q_gen_1796, q_gen_1798, q_gen_1799, q_gen_1811, q_gen_1812, q_gen_1869, q_gen_1870}, Q_f={q_gen_1752}, Delta= { (q_gen_1799, q_gen_1798) -> q_gen_1798 () -> q_gen_1798 () -> q_gen_1799 () -> q_gen_1799 (q_gen_1778, q_gen_1752) -> q_gen_1752 (q_gen_1812, q_gen_1869) -> q_gen_1752 (q_gen_1870, q_gen_1811) -> q_gen_1752 () -> q_gen_1752 () -> q_gen_1778 () -> q_gen_1778 (q_gen_1778, q_gen_1796) -> q_gen_1796 (q_gen_1778, q_gen_1869) -> q_gen_1796 (q_gen_1812, q_gen_1796) -> q_gen_1796 (q_gen_1799, q_gen_1798) -> q_gen_1796 (q_gen_1778, q_gen_1811) -> q_gen_1811 (q_gen_1812, q_gen_1752) -> q_gen_1811 (q_gen_1870, q_gen_1869) -> q_gen_1811 () -> q_gen_1812 (q_gen_1812, q_gen_1811) -> q_gen_1869 (q_gen_1870, q_gen_1752) -> q_gen_1869 (q_gen_1870, q_gen_1796) -> q_gen_1869 () -> q_gen_1870 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_elt, eq_eltlist} _| Teacher's answer: New clause system: { () -> append([nil, l2, l2]) -> 71 () -> mem([h, cons(h, t)]) -> 71 () -> reverse([nil, nil]) -> 71 (append([_zg, cons(h1, nil), _ah]) /\ reverse([t1, _zg])) -> reverse([cons(h1, t1), _ah]) -> 76 (append([t1, l2, _ug])) -> append([cons(h1, t1), l2, cons(h1, _ug)]) -> 76 (mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]) -> 78 (mem([e, t]) /\ not eq_elt([e, h])) -> mem([e, cons(h, t)]) -> 72 (mem([e, cons(h, t)]) /\ not eq_elt([e, h])) -> mem([e, t]) -> 74 (mem([e, nil])) -> BOT -> 72 } Sat witness: Found: ((mem([e, l1]) /\ reverse([l1, _eh])) -> mem([e, _eh]), { _eh -> cons(a, cons(a, cons(a, nil))) ; e -> b ; l1 -> cons(b, cons(b, cons(b, nil))) }) Total time: 64.628941 Reason for stopping: DontKnow. Stopped because: timeout