∀ {α : Type u} [inst : Std.PRange.UpwardEnumerable α] [inst_1 : LE α] [inst_2 : DecidableLE α]
  [Std.PRange.LawfulUpwardEnumerableLE α] [Std.PRange.LawfulUpwardEnumerable α] {it : Std.IterM Id α} {out : α},
  it.IsPlausibleIndirectOutput out ↔
    ∃ n, (it.internalState.next.bind fun x => Std.PRange.succMany? n x) = some out ∧ out ≤ it.internalState.upperBound