// File: /workspace/github_cpp_makefile_star2_O2/Myyura[P]MyyuraSat/./source/./solver_debug.cpp
// Function: MyyuraSat::Solver::subsumption_test()
void Solver::subsumption_test(void) {
    Vector<Literal> A = {Literal(1, 0), Literal(2, 0), Literal(3, 0)};
    Vector<Literal> B = {Literal(1, 0), Literal(2, 0)};
    Vector<Literal> C = {Literal(1, 0), Literal(2, 0), Literal(4, 0)};

    Vector<Literal> E = {Literal(2, 0), Literal(4, 0)};
    Vector<Literal> F = {Literal(4, 0), Literal(2, 0), Literal(5, 0)};
    Vector<Literal> G = {Literal(2, 0), Literal(4, 0)};
    Vector<Literal> D = {Literal(3, 0), Literal(2, 0)};

    for (int i = 0; i <= 5; i++) {
        new_variable();
    }

    _ca.extra_clause_field(true);

    // print_clauses();

    add_clause(A);
    add_clause(B);
    add_clause(C);
    add_clause(D);
    add_clause(E);
    add_clause(F);
    add_clause(G);

    // check_garbage();

    print_clauses();
    subsume0(_clauses[1]);
    print_clauses();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x80, %rsp
movq %rdi, %rbx
movabsq $0x400000002, %r14      # imm = 0x400000002
leaq -0x70(%rbp), %rsi
movq %r14, (%rsi)
movl $0x6, 0x8(%rsi)
leaq -0x80(%rbp), %rdi
pushq $0x3
popq %rdx
callq 0x56ec
leaq -0x60(%rbp), %rsi
movq %r14, (%rsi)
leaq -0x70(%rbp), %rdi
pushq $0x2
popq %rdx
callq 0x56ec
leaq -0x50(%rbp), %rsi
movq %r14, (%rsi)
movl $0x8, 0x8(%rsi)
leaq -0x60(%rbp), %rdi
pushq $0x3
popq %rdx
callq 0x56ec
movabsq $0x800000004, %r14      # imm = 0x800000004
leaq -0x40(%rbp), %rsi
movq %r14, (%rsi)
leaq -0x50(%rbp), %rdi
pushq $0x2
popq %rdx
callq 0x56ec
movabsq $0x400000008, %rax      # imm = 0x400000008
leaq -0x30(%rbp), %rsi
movq %rax, (%rsi)
movl $0xa, 0x8(%rsi)
leaq -0x40(%rbp), %rdi
pushq $0x3
popq %rdx
callq 0x56ec
leaq -0x20(%rbp), %rsi
movq %r14, (%rsi)
leaq -0x30(%rbp), %rdi
pushq $0x2
popq %rdx
callq 0x56ec
movabsq $0x400000006, %rax      # imm = 0x400000006
leaq -0x88(%rbp), %rsi
movq %rax, (%rsi)
leaq -0x20(%rbp), %rdi
pushq $0x2
popq %rdx
callq 0x56ec
pushq $0x6
popq %r14
subl $0x1, %r14d
jb 0x477c
movq %rbx, %rdi
xorl %edx, %edx
callq 0x26ba
jmp 0x476a
movb $0x1, 0x110(%rbx)
leaq -0x80(%rbp), %rsi
movq %rbx, %rdi
callq 0x4a20
leaq -0x70(%rbp), %rsi
movq %rbx, %rdi
callq 0x4a20
leaq -0x60(%rbp), %rsi
movq %rbx, %rdi
callq 0x4a20
leaq -0x20(%rbp), %rsi
movq %rbx, %rdi
callq 0x4a20
leaq -0x50(%rbp), %rsi
movq %rbx, %rdi
callq 0x4a20
leaq -0x40(%rbp), %rsi
movq %rbx, %rdi
callq 0x4a20
leaq -0x30(%rbp), %rsi
movq %rbx, %rdi
callq 0x4a20
movq %rbx, %rdi
callq 0x5732
movq 0x8(%rbx), %rax
movl 0x4(%rax), %esi
movq %rbx, %rdi
callq 0x4008
movq %rbx, %rdi
callq 0x5732
leaq -0x20(%rbp), %rdi
callq 0x4a4c
leaq -0x30(%rbp), %rdi
callq 0x4a4c
leaq -0x40(%rbp), %rdi
callq 0x4a4c
leaq -0x50(%rbp), %rdi
callq 0x4a4c
leaq -0x60(%rbp), %rdi
callq 0x4a4c
leaq -0x70(%rbp), %rdi
callq 0x4a4c
leaq -0x80(%rbp), %rdi
callq 0x4a4c
addq $0x80, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
jmp 0x486d
movq %rax, %rbx
jmp 0x4876
movq %rax, %rbx
jmp 0x487f
movq %rax, %rbx
jmp 0x4888
movq %rax, %rbx
jmp 0x4891
movq %rax, %rbx
jmp 0x489a
jmp 0x4861
movq %rax, %rbx
leaq -0x20(%rbp), %rdi
callq 0x4a4c
leaq -0x30(%rbp), %rdi
callq 0x4a4c
leaq -0x40(%rbp), %rdi
callq 0x4a4c
leaq -0x50(%rbp), %rdi
callq 0x4a4c
leaq -0x60(%rbp), %rdi
callq 0x4a4c
leaq -0x70(%rbp), %rdi
callq 0x4a4c
leaq -0x80(%rbp), %rdi
callq 0x4a4c
movq %rbx, %rdi
callq 0x2250