import logic open tactic theorem tst {A B : Prop} (H1 : A) (H2 : B) : A ∧ B ∧ A := by apply and.intro; state; assumption; apply and.intro; assumption check tst theorem tst2 {A B : Prop} (H1 : A) (H2 : B) : A ∧ B ∧ A := by repeat ((apply @and.intro | assumption) ; trace "STEP"; state; trace "----------") check tst2