Fixpoint fib n := match n with
| O => 1
| S m => match m with
| O => 1
| S o => fib o + fib m endend. Ltac sleep n := try (assert (fib n = S (fib n)) byreflexivity). (* Tune that depending on your PC *)
#[local] Definitiontime := 18.
Axiom P : nat -> Prop. Axiom P_triv : Type -> forall x, P x. Ltac solve_P := matchgoalwith |- P (S ?X) =>
sleep time; exact (P_triv Type _) end.
Lemma test_old x : P (S x) /\ P (S x) /\ P (S x) /\ P (S x). Proof. repeatsplit. idtac"T1: linear". Timeall: solve [solve_P]. Qed.
Lemma test_ok x : P (S x) /\ P (S x) /\ P (S x) /\ P (S x). Proof. repeatsplit. idtac"T2: parallel". Time par: solve [solve_P]. Qed.
Lemma test_fail x : P (S x) /\ P x /\ P (S x) /\ P (S x). Proof. repeatsplit. idtac"T3: linear failure".
Fail Timeall: solve solve_P. all: solve [apply (P_triv Type)]. Qed.
Lemma test_fail2 x : P (S x) /\ P x /\ P (S x) /\ P (S x). Proof. repeatsplit. idtac"T4: parallel failure".
Fail Time par: solve [solve_P]. all: solve [apply (P_triv Type)]. Qed.
Messung V0.5
¤ Dauer der Verarbeitung: 0.0 Sekunden
(vorverarbeitet)
¤
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.