import proveit
from proveit import defaults
from proveit import A, B
from proveit.logic import in_bool
from proveit.logic.booleans.disjunction import demorgans_law_and_to_or_bin_explicit
theory = proveit.Theory() # the theorem's theory
%proving demorgans_law_and_to_or_bin
defaults.assumptions = demorgans_law_and_to_or_bin.all_conditions()
in_bool(defaults.assumptions[0].operands[0].operands[0].operand).prove()
in_bool(defaults.assumptions[0].operands[0].operands[1].operand).prove()
demorgans_law_and_to_or_bin_explicit
demorgans_law_and_to_or_bin_explicit.instantiate(
{A:A, B:B}, assumptions = demorgans_law_and_to_or_bin.all_conditions())
%qed