(** This is a change of behaviour introduced by PR #12532. It is not clear whether it is a legit behaviour but it is worth having it in the test
suite. *)
Module Foo.
Axiom whatever : Type. Axiom name : Type. Axiom nw : forall (P : Type), name -> P. Axiom raft_data : Type. Axiom In : raft_data -> Prop.
Axiom foo : forall st st', In st -> In st'.
Definition params := prod whatever raft_data.
Goalforall
(d : raft_data),
(forall (h : name), In (@snd whatever raft_data (@nw params h))) ->
In d. Proof. intros.
eapply foo.
solve [debug eauto]. Abort.
End Foo.
Module Bar.
Axiom whatever : Type. Axiom AppendEntries : whatever -> Prop. Axiom name : Type. Axiom nw : forall (P : Type), name -> P. Axiom raft_data : Type. Axiom In : raft_data -> Prop.
Axiom foo : forall st st' lid,
(AppendEntries lid -> In st) -> AppendEntries lid -> In st'.
Definition params := prod whatever raft_data.
Goalforall
(d : raft_data),
(forall (h : name) (w : whatever),
AppendEntries w -> In (@snd whatever raft_data (@nw params h))) ->
In d. Proof. intros.
eapply foo. intros.
solve [debug eauto]. Abort.
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.