Calc
FreshVar()
FreshVars()
Inductive()
Lemma()
NewType()
PTheorem()
Proof
QExists()
QForAll()
QImplies()
Struct()
Theorem()
axiom()
cond()
define()
prove()
search()
simp()
andI()
Judgement
LemmaError
Unfolding
choose()
compose()
decl_occurs()
declare()
define_fix()
define_simple()
defns
ext()
forget()
free_vars()
fresh_const()
generalize()
herb()
induct_inductive()
instan()
is_declared()
is_defined()
is_fresh_var()
is_proof()
make_unfolding()
modus()
obtain()
open_binder()
register_definition()
rename_vars2()
specialize()
subst()
trigger()
unfold()
unfold_defns()
Prove an and from two kd.Proofs of its conjuncts.
>>> a, b = smt.Bools("a b") >>> pa = kd.axiom(smt.Implies(True, a)) >>> pb = kd.axiom(smt.Implies(True, b)) >>> andI([pa, pb, pb]) |= Implies(True, And(a, b, b))
pfs (Sequence[Proof])