From 3dcbf9715088e7b06a9a0ed70275fdbd4f1e46aa Mon Sep 17 00:00:00 2001 From: Xavier Denis Date: Fri, 26 Jul 2024 10:31:38 +0200 Subject: [PATCH] stabilize proof --- .../list_reversal_lasso/why3session.xml | 162 ++++-------------- .../list_reversal_lasso/why3shapes.gz | Bin 7478 -> 7562 bytes 2 files changed, 36 insertions(+), 126 deletions(-) diff --git a/creusot/tests/should_succeed/list_reversal_lasso/why3session.xml b/creusot/tests/should_succeed/list_reversal_lasso/why3session.xml index 1fdd2a63f0..e039e18042 100644 --- a/creusot/tests/should_succeed/list_reversal_lasso/why3session.xml +++ b/creusot/tests/should_succeed/list_reversal_lasso/why3session.xml @@ -5,86 +5,26 @@ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -132,16 +72,7 @@ - - - - - - - - - @@ -162,9 +93,6 @@ - - - @@ -208,16 +136,7 @@ - - - - - - - - - @@ -235,14 +154,8 @@ - - - - - - @@ -256,9 +169,6 @@ - - - @@ -290,14 +200,8 @@ - - - - - - @@ -318,12 +222,13 @@ - + + + + + - - - @@ -334,9 +239,6 @@ - - - @@ -353,34 +255,53 @@ - - - - + + + + + + + + + + + + + + + + + + - + - + + + + + - - - - + - + + + + + @@ -390,14 +311,6 @@ - - - - - - - - @@ -410,9 +323,6 @@ - - - diff --git a/creusot/tests/should_succeed/list_reversal_lasso/why3shapes.gz b/creusot/tests/should_succeed/list_reversal_lasso/why3shapes.gz index a4565a20d7117689494b8544be9b7a2a7477e15f..5d6ad97e77599e69f4c23ade57594bed8af1778d 100644 GIT binary patch literal 7562 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 literal 7478 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